请教 :::DropDownList ddlGangwei = (DropDownList)(this.DataGrid1.Items[e.Item.ItemIndex].FindControl("ddlGangwei"));报错    :: 未将对象引用设置到对象的实例跟踪发现  定义的 DropDownList 为  未定义 为什么找不到  DataGrid中的 DropDownList呢。=======================================
函数代码如下:
private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
strOldGangwei = ((Label)(e.Item.FindControl("lblGangwei"))).Text.ToString();
this.DataGrid1.EditItemIndex = e.Item.ItemIndex;

DropDownList ddlGangwei = (DropDownList)e.Item.FindControl("ddlGangwei");
try
{
if ( strConnection.State == System.Data.ConnectionState.Closed )
{
strConnection.Open();
}

string strSQL = "select distinct 岗位名称 from DBgangwei";
SqlDataAdapter myComm = new SqlDataAdapter( strSQL,strConnection );
DataSet myDS = new DataSet(); myComm.Fill(myDS,"temp");
ddlGangwei.DataSource     = myDS.Tables["temp"].DefaultView;
ddlGangwei.DataTextField  = myDS.Tables["temp"].Columns[0].ToString();
ddlGangwei.DataValueField = myDS.Tables["temp"].Columns[0].ToString();
ddlGangwei.Items.Add(new ListItem("-请选择-","0")); ddlGangwei.DataBind();
}
catch( Exception Error )
{
Response.Write("<scipt>alert('"+Error.ToString()+"!')</script>");
}
}

解决方案 »

  1.   

    检查一下您的编辑模板列中是否包含ID为: ddlGangwei 的DropDownList. 
      

  2.   

    因为你的dropdownlist是在item项里才有的。
    你在编辑项里没放置dropdowlist控件。
    你右键单击datagrid。编辑你那个模板列。
    在编辑项里也加上dropdownlist控件
      

  3.   

    好象要先判断出你是什么项吧,比如Head项,就绝对没有DropdownList,判断下吧.
      

  4.   

    编辑过模板列如下:Head 项里是什么也没有做在  ItemTemplate   中 放了一个  Label (lblGangwei)
    在  EditItemTemplate 中 放了一个 DropDownList (ddlGrangwei)
      

  5.   

    加个判断if(e.Item.ItemType == ListItemType.Item||e.Item.ItemType == ListItemType.AlternatingItem)