ASP.NET在网页方法aspx.cs中使用控件显示不存在的名称
<asp:DropDownList ID="ddlType" runat="server" Width="1244px" DataSourceID="LinqDataSource2" DataTextField="type_name" DataValueField="type_id" AutoPostBack="true" OnSelectedIndexChanged="ddlType_SelectedIndexChanged">
</asp:DropDownList>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
var types = from t in db.type
select new
{
t.id,
t.type_name
};
foreach (var type in types)
{
ddlType.Items.Add(new ListItem(type.type_name.ToString(), type.id.ToString()));
}
Bind();
}
}
private void Bind()
{
string filmType="未选择";
int typeId = int.Parse(ddlType.SelectedValue);
//获取typeid
//在relationship和film查找
var query = from r in db.relationship
join f in db.film on r.film_id equals f.id
join t in db.type on r.type_id equals t.id
where t.type_name == filmType
select new film { id = f.id, director = f.director, actor = f.actor, intro = f.intro, imag = f.imag, name = f.name };
}
当前上下文中不存在“ddlType”
尝试使用FindControl没有解决问题
程序正常不报错
把DropDownList
控件删掉,再重新拖一个进去
后来发现是.aspx的interits错了
你好,
首先你要查看你的该aspx 文件中,是否存在 aspx.designer.cs 文件. 一般识别不出控件的原因是 丢失了这个文件.
解决办法一:
右击你的项目,选择转化为web 应用程序
解决办法二:
重新创一个新的项目, 复制你的代码到新的项目.
如果你有aspx.designer.cs 文件, 那么点开查看该文件里是否有 DropDownList 控件,就像这样:
protected global::System.Web.UI.WebControls.DropDownList DropDownList1;
如果没有,删了你项目中的DropDownList ,然后重新写一个.