在WPF中动态创建DataGrid的ComboBox

时间:2014-12-15 15:49:19

标签: c# wpf xaml

我正在通过代码动态创建WPF DataGrid。 其中一列必须是ComboBox

类型
public class myModel
{
    public  string[] item;
}   

var modelList = new List<myModel>();
modelList.Add(new myModel {item = new string[] {"One", "Two", "Three"}});
modelList.Add(new myModel {item = new string[] {"1", "2", "3"}});

foreach (DataColumn col in myData.Columns)
{
    if (col.ColumnName.Equals("Model"))
    {
        var binding = new Binding("modelList");
        binding.Source = modelList;

        myGrid.Columns.Add(new DataGridComboBoxColumn
        {
            Header = col.ColumnName,
            Width = 75,
            ItemsSource =modelList, //new string[] { "4", "5", "6" } <-this only works!
            DisplayMemberPath = "item",
            SelectedItemBinding = binding,
            SelectedValuePath = "item"
        });
    }
}

我真的不知道发生了什么。我所拥有的只是空ComboBox。 我需要的是首先使用{"One", "Two", "Three"},第二个组合{"1", "2", "3"}等组合。我不能使用模型,因为列数会有所不同。

我怎样才能做到这一点?

0 个答案:

没有答案