DataGridComboBoxColumn
にselectedItemとして特定の項目を設定しようとしています。しかし、多くの研究、私はまだ私のための正解を見つけることはできません。DataGridComboBoxColumn選択項目を設定する
私のシナリオ:
私はプログラム的にItemsSource
としてObservableCollection<>
を持ってDataGrid
を作成しました。最後の列として、DataGridComboBoxColumn
を追加して、ユーザーが選択できるようにします。このようなデータはすでにデータベースに保存されているので、データベースに格納されているコレクションの値を「事前設定」する必要があります。
private void ManipulateColumns(DataGrid grid)
{
...
DataGridComboBoxColumn currencies = new DataGridComboBoxColumn();
//Here come the possible choices from the database
ObservableCollection<string> allCurrencies = new ObservableCollection<string>(Data.AllCurrencys);
currencies.ItemsSource = allCurrencies;
currencies.Header = "Currency";
currencies.CanUserReorder = false;
currencies.CanUserResize = false;
currencies.CanUserSort = false;
grid.Columns.Add(currencies);
currencies.MinWidth = 100;
//Set the selectedItem here for the column "Currency"
...
}
私は通常のコンボボックスのために選択した項目を設定するためではなくDataGridComboBoxColumnsのための多くのチュートリアルを発見しました。私はすでにcurrencies.SetCurrentValue()
で試してみましたが、DataGridComboBoxColumn
からDependencyProperty
が見つかりませんでした。
誰かお手伝いできますか?
ありがとうございます。
Boldi
ヘブライ語、お返事ありがとうございます。私の目標は、実際にはすべての行についてコンボボックスの値を設定することです。私はあなたが何を意味するのか分かりません。私はこれを実装し、フィードバックを提供しようとします。しかし、これはDataGridにデータをバインドする通常の方法ではありませんか?私はObservableCollectionを取って、それを 'ItemsSource'として設定するのが正しい方法だと思っていました。しかし、私はC#の世界にはかなり新しいことを認めなければなりません。 – Boldi