为什么组合框刷新不起作用?

时间:2010-03-06 18:21:01

标签: .net winforms combobox tabcontrol datarelation

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

问题:

我有一张TabControl的表单。第一个中有两个TabPagesdataGridView,第二个是comboboxes

DataGridView填充了来自Table1的数据,在另一个标签上,第一个combobox数据源设置为TableCB1,第二个combobox设置为{{} 1}}等。

TableCB2 ...之间TableCB1, TableCB2喜欢(DataRelations)。我正在使用数据绑定将表中的当前列绑定到控件。

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

但是如果在表单加载时显示TabPage 2,则正确选择组合框项目!

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

我在.NET3.5和winforms上做这件事。

感谢。

1 个答案:

答案 0 :(得分:0)

this帖子中的回复可能就是您所需要的:

  

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