用datagrid实现编缉,修改,取消功能时,现一列需要用DropDownList控件。
怎么样实现datagrid的修改功能?
要详细步骤。
[email protected]

解决方案 »

  1.   

    注:DropDownList绑定的数据需要从数据库读出。
      

  2.   

    将此列转为模板,然后在模板中加入DropDownList,对其初始化.如下:
    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if(e.Item.ItemType==ListItemType.EditItem)
    {
    DropDownList DG=(System.Web.UI.WebControls.DropDownList)e.Item.FindControl("DropDownList2");
    TextBox TB=(System.Web.UI.WebControls.TextBox)e.Item.FindControl("TextBox10");
    System.Data.SqlClient.SqlConnection cn=new System.Data.SqlClient.SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
    String Sql="select NAME from IP_COMPUTERTYPE";
    System.Data.SqlClient.SqlDataAdapter Da=new SqlDataAdapter(Sql,cn);
    System.Data.DataSet ds= new DataSet();
    cn.Open();
    Da.Fill(ds,"IP_COMPUTERTYPE");
    System.Data.DataView vw=new DataView(ds.Tables["IP_COMPUTERTYPE"]);
    cn.Close();

    DG.DataSource=ds.Tables["IP_COMPUTERTYPE"].DefaultView;
    DG.DataValueField=ds.Tables["IP_COMPUTERTYPE"].Columns[0].ColumnName;
    DG.DataTextField=ds.Tables["IP_COMPUTERTYPE"].Columns[0].ColumnName;
    DG.DataBind();
    DG.Items.FindByText(TB.Text).Selected=true; DG.Items.FindByText(TB.Text).Selected=true;
    }
    }
    _______________________________________________________________________你试试_____