ASP.NET三级数据绑定

时间:2010-02-24 15:04:29

标签: asp.net data-binding

我有使用ObjectDataSource绑定的自定义对象。我有三级绑定:一个DropDownList(Department),它过滤下一个过滤GridView(问题)的DropDownList(Category)。每个ObjectDataSource都绑定到前一个控件的SelectedValue(当然除了第一个)。

一切正常只适用于下一级别(部门到类别和类别到问题)。当我更改部门时,类别列表会正确更新,但显示的问题来自之前选择的类别。

如何让这个三级绑定正常工作?我无法弄清楚我是否遗漏了一些东西。如果必须,我可以在第一个列表上实现SelectedIndexChanged并手动强制更新网格,但这并不理想。谢谢你的帮助!

更多信息:我没有默认的“选择项目”选项。这意味着当我更改部门时,会自动选择第一个类别。我希望绑定能够足够聪明,一直涓涓细流。这很聪明,我没有必要做if(!IsPostBack){//加载数据}。

我目前已经实现了Department_SelectedIndexChanged()并简单地完成了一个Questions.DataSource = Questions.DataSource;。这似乎正确地“刷新”了一切。有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

您是否可以清除网格,直到第二个值刷新为止?你在寻找一个AjAX appraoch,还是使用回发?

没有我知道的自动解决方案,所以你需要做一些像你提到的那样的事情,因为页面知道如何刷新网格呢?