Как я могу динамически обновить выбор comboxboxcolumn в сетке данных? - PullRequest
1 голос
/ 04 ноября 2011

Я пытаюсь отобразить два столбца в таблице данных (dt) в сетку данных.И добавьте еще один столбец, который является comboxcolumn, чтобы я мог назначить секторы для каждой строки.Проблема в том, что выбор комбо-боксов не может быть динамически обновлен.когда я нажимаю что-то еще, выбор исчезает.Есть ли способ исправить это?

   dg_display.DataContext = dt.DefaultView;
   dg_display.Columns[0].Header = "Symbol";
   dg_display.Columns[1].Header = "Company name";          
   DataGridComboBoxColumn columnComboBox = new DataGridComboBoxColumn();
   string[] sectorarray = new[]
                                    {
                                       "Consumer Discretionary", "Consumer     Staples", "Energy", "Financial",
                                       "Financials", "Health Care", "Industrials", "Information Technology",
                                       "Materials", "Other", "Technology","Telecommunication Services", "Utilities"
                                   };
        columnComboBox.ItemsSource = sectorarray;
        columnComboBox.IsReadOnly = false;
                    dg_display.Columns.Add(columnComboBox);
        dg_display.Columns[2].Header = "Sector";

Ответы [ 2 ]

0 голосов
/ 04 ноября 2011

Можешь попробовать вот так ....

 DataGridComboBoxColumn col = new DataGridComboBoxColumn();
        col.Header = "Name";
        col.DisplayMemberPath = "Name"; 
        col.SelectedValueBinding = new Binding("Name");
        col.ItemsSource = simacc;
        col.TextBinding = new Binding("Name");
        col.CanUserSort = false;
        dataGrid1.Columns.Add(col);
0 голосов
/ 04 ноября 2011

Вы не привязываете SelectedItem в ComboBox

Установите либо SelectedItemBinding, либо SelectedValueBinding

...