【发布时间】:2010-02-24 15:04:28
【问题描述】:
我有使用 ObjectDataSource 绑定的自定义对象。我有三级绑定:过滤下一个 DropDownList(类别)的 DropDownList(部门)过滤 GridView(问题)。每个 ObjectDataSource 都绑定到前一个控件的 SelectedValue(当然第一个除外)。
只有到下一个级别(部门到类别和类别到问题)才能正常工作。当我更改部门时,类别列表会正确更新,但显示的问题来自之前选择的类别。
我怎样才能让这个三级绑定正常工作?我不知道我是否遗漏了什么。如果必须,我可以在第一个列表上实现 SelectedIndexChanged 并手动强制更新网格,但这并不理想。感谢您的帮助!
更多信息:我没有默认的“选择项目”选项。这意味着当我更改部门时,会自动选择第一个类别。我希望绑定足够聪明,可以一直滴下去。它足够聪明,我不必执行 if (!IsPostBack) { // 加载数据 }。
我目前已经实现了 Department_SelectedIndexChanged() 并简单地完成了 Questions.DataSource = Questions.DataSource;。这似乎正确地“刷新”了一切。有没有更好的方法来做到这一点?
【问题讨论】:
标签: asp.net data-binding