0

我有一个复杂的问题,请你帮帮我。

问题:

我有一个带有TabControl. TabPages第一个是 a有两个,dataGridView第二个是 multiple comboboxes

DataGridView填充了来自 的数据Table1,在另一个选项卡上,第一个combobox数据源设置为TableCB1,第二个设置comboboxTableCB2等等。

之间TableCB1, TableCB2......DataRelations就像(TableCB1.ID->TableCB2.ParentID)。我正在使用数据绑定将当前列从表绑定到控件。

当我打开表单时,第一个 tabPage ( dataGridView) 已填充并且工作正常,但如果我选择第二个 TabPage (with comboboxes),则combobox所选项目未正确选择!!!只有第一个combobox设置正确,但所有其他都选择了数据源中的第一项,直到我更改 bindingsource 位置或 make dataset.rejectchanges()

但是如果让 TabPage 两个在表单加载时显示,那么组合框项目被正确选择了!

我知道这是一个非常具体的问题,但希望有人可以帮助我解决这个问题。

我在 .NET3.5 和 winforms 上做。

谢谢。

4

1 回答 1

0

线程中的回复可能是您需要的:

在创建控件之前,控件上不会发生数据绑定。TabPage 仅在 TabPage 可见后创建子控件。要使 DataBinding 发生,您需要强制创建 TabPage 上的子控件,并且可以通过显示/隐藏 TabPage(如您所发现的那样)来做到这一点。

于 2010-03-08T21:14:34.640 回答