我正在尝试将数据表(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";
答案 0 :(得分:0)
您没有绑定ComboBox中的SelectedItem
设置SelectedItemBinding
或SelectedValueBinding
答案 1 :(得分:0)
你可以这样试试......
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);