この記事では、特定のボタンをクリックすることで、XamDataGrid 内の「ID」列を左右に移動する方法について紹介します。
コードビハインドで列を移動する実装
以下は「ID」列を右に1つ移動するボタンイベントの例です。このメソッドでは、FieldLayouts[0] から列情報を取得し、「ID」列が一番右でない場合に、1つ右に移動させています。Moveは、指定した列のインデックスを新しい位置に移動するためのメソッドです。
private void MoveIDToRight_Click(object sender, RoutedEventArgs e)
{
FieldLayout fieldLayout = xamDataGrid1.FieldLayouts[0];
FieldCollection fields = fieldLayout.Fields;
int idIndex = fields.IndexOf("ID");
if (idIndex >= 0 && idIndex < fields.Count - 1)
{
fields.Move(idIndex, idIndex + 1);
}
}
XAML 側の設定
XAML 側のボタンには、上記の MoveIDToRight_Click メソッドを Click イベントでバインドします。
<Button Content="ID 列を右に移動"
Click="MoveIDToRight_Click"
..../>
実行結果
アプリ実行中に「ID 列を右に移動」ボタンをクリックすると、MoveIDToRight_Click イベントが発火し、XamDataGrid 内の「ID」列が右に1つ移動します。同様に、「ID 列を左に移動」する処理も、同様の方法で実装できます。
