专门填写DataGridView中的组合框

时间:2012-11-20 18:07:43

标签: c# .net

我在网格中的特定列中添加了一个组合框,并填充了它。因此,当网格填充时,组合框也会填充预定义的值。我试图像这样过滤特定的行:如果第1列的值为'one',我需要用“one”,“two”和“three”填充组合框,否则我的组合框需要具有预定义的值。从某种意义上说,我需要访问每一行中的控件。这有可能吗?

提前致谢,

2 个答案:

答案 0 :(得分:1)

我想我明白你想要什么,你可以在数据网格事件的表单加载事件中填充你的组合框,你可以访问网格中每一行的组合框

private void form1_load(object sender, EventArg e)
{
     for (int i = 0; i < gridView1.Rows.Count; ++i)
     {
         DataGridViewComboBoxCell cell = gridView1.Rows[i].Cells[5] as DataGridViewComboBoxCell;
         if (gridView1.Rows[i].Cells[1].Value.ToString() == "one")
         {
             cell.Items.Clear();
             cell.Items.Add("one");
             cell.Items.Add("two");
             cell.Items.Add("three");
         }
     }
}

我假设带有comboBox的列在网格中有索引5.

答案 1 :(得分:0)

如果您正在寻找自动完成,请尝试设置ComboBox Prorperties的以下值

1. Set AutoCompleteMode = SuggestAppend
2. Set AutoCompleteSource = ListItems

如果您从DataSource绑定,那么您可以在Code Behind

中设置它