在绑定后添加自定义项

本文关键字:自定义 添加 绑定 | 更新日期: 2023-09-27 17:52:54

我已经为桌面应用程序(使用WinForms)开发了一个从SQL访问信息的数据集。

将数据绑定到ComboBox并不是什么新鲜事,但正如我在ASP中所做的那样。. Net中,我使用的一些类显然不适用于WinForms。

所以基本上,我需要知道我需要做什么来绑定一个组合框到一个数据表,然后添加一个自定义项目到Index=0,基本上状态"选择mcquot;。该项将在SelectionChange上进行检查,但我需要在集合中有一个Nullification ListItem,以便我可以使条件细化无效。

我有3个组合框和1个数据视图。这3个组合框可以细化网格视图中可见的信息列表,但我也希望用户能够取消选择。

这是我尝试过的,没有得到任何地方:
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
      'cboMC.Datasource = Me._mc.GetMC().AddMCRow("Select MC") <-- Did not Work
    cboMC.DataSource = Me._mc.GetMC()
    cboMC.Items.Insert(0, New Object() {"Select MC"}) <-- Current Try
    ...    
End Sub

还有其他建议吗?同样,这是一个 WinForms 应用,而不是WebForms

最终版本(根据@Tebc)

cboMC.Items.Add("Select MC")
cboMC.Items.AddRange(Me._mc.GetMC().ToArray())

上面的导数确保Invalidator在索引0

cboMC.Items.AddRange(Me._mc.GetMC().ToArray())
cboMC.Items.Insert(0, "Select MC")

效果很好....谢谢你指引我走上正确的道路。

在绑定后添加自定义项

我不记得确切的语法了,但是我所做的是这样的:

  1. 创建一个临时数组,大小设置为数据表的计数
  2. cboMC.Items。添加("选择MC")
  3. 使用数据表的ToArray函数
  4. cobMC.Items。AddRange([the temp Array])