0
我需要在RowDataBound
事件中编辑GridView
行。使用DropDownList在GridView中编辑行
如果试图编辑一行与现场Area
不为空值,我没有问题,但如果试图编辑一行与现场Area
null或空值我有经典的错误:
未将对象引用设置为一个对象
上线的一个实例:
ddlCities.Items.FindByValue(hdnval.Value).Selected = true;
我认为插入米y代码这个条件解决问题,但没有成功:
if (!string.IsNullOrEmpty(hdnval.Value))
{
ddlCities.Items.FindByValue(hdnval.Value).Selected = true;
}
else
{
ddlCities.Items.FindByValue(hdnval.Value).Selected = false;
}
请帮助我,提前谢谢。
我的代码如下。
protected void gvProducts_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow && gvProducts.EditIndex == e.Row.RowIndex)
{
DropDownList ddlCities = (DropDownList)e.Row.FindControl("Area");
HiddenField hdnval = (HiddenField)e.Row.FindControl("hdnArea");
string query = " Select distinct Area from ... ; ";
OdbcCommand cmd = new OdbcCommand(query);
ddlCities.DataSource = GetData(cmd);
ddlCities.DataTextField = "Area";
ddlCities.DataValueField = "Area";
ddlCities.DataBind();
if (!string.IsNullOrEmpty(hdnval.Value))
{
ddlCities.Items.FindByValue(hdnval.Value).Selected = true;
}
else
{
ddlCities.Items.FindByValue(hdnval.Value).Selected = false;
}
}
}
[什么是'NullReferenceException'和我该如何解决它?](http://stackoverflow.com/q/4660142/447156) –
这里有一个很好的教程http://codepedia.info/2015/02/ BIND的下拉列表,里面-gridview的编辑模板/ –