其他分享
首页 > 其他分享> > CodeGo.net>用DropDownList填充Gridview

CodeGo.net>用DropDownList填充Gridview

作者:互联网

我正在尝试创建一个gridview,以根据gridview上方的下拉列表中选择的年份显示表格的详细信息.

dropdownlist.datasource由日期时间形式的年份组成,并从数据库中的Years表(YearId是主键,而不是显示的字段)中填充. gridview.datasource由Items表中的项组成(其中YearId是外键).

当下拉列表中的选择更改时,我需要获取所选项目的YearId值,并将gridview的数据源更改为如下所示:

items.where(item => item.YearId == ((Year)dropdownlist.selecteditem).YearId)

不幸的是,它从未如此简单,并且

((Year)dropdownlist.selecteditem).YearId 

无效.我似乎无法将listitem转换为Year对象.有关如何执行此操作的任何想法?

[编辑]

这是下拉列表的填充方式.如果有更好的方法可以做到(并且我敢肯定),请随时告诉我!

dropdownlist.DataSource = DataContext.Years;
dropdownlist.DataValueField = "Year";
dropdownlist.DataBind();

解决方法:

你应该做

dropdownlist.DataSource = DataContext.Years;
dropdownlist.DataValueField = "YearId";
dropdownList.DataTextField = "Year";
dropdownlist.DataBind();

然后使用bonifaz的查询.

标签:gridview,drop-down-menu,linq,asp-net,c
来源: https://codeday.me/bug/20191208/2089880.html