Ultimate UI for Windows Forms 2005 Volume 2 の WinTree では、列サポートに加えて、列の移動機能もサポートされました。列をプログラムから移動するには、各列の LayoutInfo の OriginX と OriginY を変更します。また、エンド ユーザーは列ヘッダをドラッグ アンド ドロップして列を移動できます。
エンド ユーザーが列単位で列を移動できないようにするには、列の AllowMoving プロパティを使用します。また、特定の列セットのすべての列を移動できないようにするには UltraTreeColumnSet の AllowColMoving プロパティを使用し、すべての列セットの列を移動できないようにするには UltraTreeColumnSetting の AllowColMoving プロパティを使用します。
変更前の WinTree は次のスクリーンショットのとおりです。
列を移動するには、列ヘッダの上で左ボタンを押したまま、列を新しい位置にドラッグします。列ヘッダをドラッグすると、有効なドロップ位置を示すドロップ インジケータ(列ヘッダを他の列の隣に配置する場合は赤の矢印のペア、空のスロットにドロップする場合は赤の四角形)が表示されます。
たとえば "First Name" 列を "Last Name" 列の前に移動する場合は、"First Name" 列のヘッダをクリックして "Last Name" 列のヘッダの上にドラッグします。"Last Name" 列ヘッダの左端の上に来ると、赤の矢印が"Last Name" 列の左端に表示されます(次のスクリーンショットを参照)。 これは、"First Name" 列が "Last Name" 列の左に配置されることを示します。
マウスを放すと、赤のドロップインジケータの位置に基づいて列が配置されます。