问:
protected void GridView_DataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
SqlConnection con = null;
con = new SqlConnection("Max Pool Size = 512;Server= ; User ID= ;password=j ; Initial Catalog=xx系统");
con.Open();
string sqlstr = "select name from table1";
SqlDataAdapter da = new SqlDataAdapter(sqlstr, con);
DataSet ds = new DataSet();
da.Fill(ds, "table1");
DropDownList ddl = (DropDownList)e.Row.FindControl("DDLname");
DataView dv = new DataView();
dv = ds.Tables["table1"].DefaultView;
ddl.DataSourceID = null;
ddl.DataSource = dv;
ddl.DataTextField = "name";
ddl.DataValueField = "name";
ddl.SelectedIndex = 0;
ddl.DataBind();
}
}
问题:我已经把数据库中table1表的name列绑定到DDLname下拉菜单中,如何在下拉菜单中第一行添加一个空白项 ?
答:
DataView dv = new DataView();
dv = ds.Tables["table1"].DefaultView;
改成:
DataTable dt = ds.Tables["table1"];
DataRow dr=dt.NewRow();
dr["name"]="--请选择--";//这里为空白项的内容
dt.Rows.InsertAt(dr, 0);
DataView dv = dt.DefaultView;