English 中文(简体)
当调用tableAdapter的Fill()方法时,我该如何防止selectedValue被改变?
原标题:
  • 时间:2009-01-08 19:24:27
  •  标签:

我已将我的ListBox绑定到一些数据。

The problem is when I call myTableAdapter.Fill(..) method, SelectedValue changes to whatever is the first item ID in the list. Although "Selected Value" in VS is not bound anywhere (see image). alt text http://img370.imageshack.us/img370/2548/ss20090108212745qz2.png

请问我如何防止这种行为?

非常感谢您的帮助。

最佳回答

你不应该在每个请求上进行绑定。如果你因为某些原因绝对必须在每个请求上进行绑定,那么你必须手动设置ListBox的SelectedIndex。这是因为Fill方法首先清除列表,然后为获取的数据创建新的列表项。

问题回答

我能想到的最简单的方法是将您的表适配器填充代码更改为以下内容:

string preSelected = myDropDownList.SelectedValue;
myTableAdapter.Fill(myDataTable);
myDropDownList.SelectedValue = preSelected;

如果该项目不再存在,您将遇到问题,因此您可能需要添加一些条件来检查。





相关问题
热门标签