学习心得

来源:互联网 发布:sql数据库面试题及答案 编辑:程序博客网 时间:2024/06/10 03:47

   最近做项目遇到和以前一样没解决的问题,到网上查了下,经过自己的修改,用着还满舒服的。

  首先是dropDownList 的SelectedValue的问题,我的GridView中含有模板列,从GridView中选择这列后要把选择列的某行内容显示在DropDownlist中, DropDownList是数据源绑定的,直接在RowSelecting事件中写

ddlCategory.SelectedValue = ((Label)gdvContent.Rows[e.NewSelectedIndex].Cells[3].FindControl("lblCategory")).Text.Trim(); 回出现一个异常,异常详细信息: System.ArgumentOutOfRangeException: “ddlCategory”有一个无效 SelectedValue,因为它不在项目列表中。

到网上找到这么句代码

DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(DropDownList1.Items.FindByValue("中国"));

,但是还是不好用,于是查看了下ddlCategory.Items下的属性发现FindByText,试了下好用了,就顺便把

SelectedIndex和SelectedItem.Text都写了下哈, 

string a = ((Label)gdvContent.Rows[e.NewSelectedIndex].Cells[3].FindControl("lblCategory")).Text.Trim();
        ddlCategory.SelectedIndex = ddlCategory.Items.IndexOf(ddlCategory.Items.FindByText(a));
        ddlCategory.SelectedItem.Text = ((Label)gdvContent.Rows[e.NewSelectedIndex].Cells[3].FindControl("lblCategory")).Text.Trim();

 

 

原创粉丝点击