3

データグリッドを DataView にバインドしています。データ表示時にID列を非表示にしたい。ID 列は、コードの別の部分で使用されるため、データに存在する必要があります。

ID 列は常に最初の (インデックス 0) 列です。

DataContextChanged イベントは、すべての列が更新されたことを保証しないと考えるのは正しいですか?

列を非表示にする前にバインディングが完了したことを確認するにはどうすればよいですか? 理想的には、列名で非表示にしたいと思います。

編集:列は動的 SQL から生成されるため、XAML で列を指定できないことを忘れていました。

4

1 に答える 1

8

私はそれを考え出した。

AutoGeneratingColumn イベントでは、DataGridAutoGeneratingColumnEventArgs ヘッダー値を確認し、列ヘッダーと一致する場合は操作をキャンセルしています。

Private void dataGrid_AutoGeneratingColumn(object sender,     DataGridAutoGeneratingColumnEventArgs e)
        {
            if (e.Column.Header.ToString() == "ID")  
            {
                e.Cancel = true;
            }
        }
于 2012-10-10T09:21:54.593 に答える