源码如下: protected void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
//string gid = Session["gid"].ToString();
string gid = "16";
string sql_jg = "select nid,lbmc from dbo.t_JieGuoInfo where gid=" + gid + " and zt='1' and pid<>0";
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["YxConnection"].ToString().Trim());
SqlDataAdapter da = new SqlDataAdapter(sql_jg, conn);
DataSet ds = new DataSet();
da.Fill(ds, "table1");
if (e.Item.ItemType == ListItemType.EditItem)
{
DropDownList ddl = (DropDownList)e.Item.FindControl("dep_jieguo");
ddl.DataSource = ds.Tables["table1"];
ddl.DataTextField = "lbmc"; //
ddl.DataValueField = "nid";
ddl.DataBind();
ddl.Items.FindByValue(Convert.ToString(DataBinder.Eval(e.Item.DataItem, "nid"))).Selected = true;//选择数据库内的作为默认
}
}
protected void DataGrid1_EditCommand(object source, DataGridCommandEventArgs e)
{
this.DataGrid1.EditItemIndex = e.Item.ItemIndex;
BindData(); }
public void BindData()
{
try
{
cmd = new SqlCommand(sqls, conn);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
ds = new DataSet();
DataGrid1.DataSource = ds.Tables["SLC_call"]/*.DefaultView*/;
DataGrid1.DataBind();
}
catch (Exception ex)
{
Response.Write("<script>alert('错误的操作.')</script>");
}
}
问题是:在没有启用启用DataGrid.ItemDataBound事件时,点编辑按钮时,呈现的数据全部正常,当加上这个事件后,我点编辑时,编辑的数据上面的显示,下面的列不显示.
假如:有4条数据:a,b,c,d,如果当前编辑B数据时,那么,点编辑后,C,D就不呈现出来了了?不知什么原因?
{
//string gid = Session["gid"].ToString();
string gid = "16";
string sql_jg = "select nid,lbmc from dbo.t_JieGuoInfo where gid=" + gid + " and zt='1' and pid<>0";
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["YxConnection"].ToString().Trim());
SqlDataAdapter da = new SqlDataAdapter(sql_jg, conn);
DataSet ds = new DataSet();
da.Fill(ds, "table1");
if (e.Item.ItemType == ListItemType.EditItem)
{
DropDownList ddl = (DropDownList)e.Item.FindControl("dep_jieguo");
ddl.DataSource = ds.Tables["table1"];
ddl.DataTextField = "lbmc"; //
ddl.DataValueField = "nid";
ddl.DataBind();
ddl.Items.FindByValue(Convert.ToString(DataBinder.Eval(e.Item.DataItem, "nid"))).Selected = true;//选择数据库内的作为默认
}
}
protected void DataGrid1_EditCommand(object source, DataGridCommandEventArgs e)
{
this.DataGrid1.EditItemIndex = e.Item.ItemIndex;
BindData(); }
public void BindData()
{
try
{
cmd = new SqlCommand(sqls, conn);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
ds = new DataSet();
DataGrid1.DataSource = ds.Tables["SLC_call"]/*.DefaultView*/;
DataGrid1.DataBind();
}
catch (Exception ex)
{
Response.Write("<script>alert('错误的操作.')</script>");
}
}
问题是:在没有启用启用DataGrid.ItemDataBound事件时,点编辑按钮时,呈现的数据全部正常,当加上这个事件后,我点编辑时,编辑的数据上面的显示,下面的列不显示.
假如:有4条数据:a,b,c,d,如果当前编辑B数据时,那么,点编辑后,C,D就不呈现出来了了?不知什么原因?
解决方案 »
- 100分邀请高手进来谈谈如何更好的在C# winform里实现自定义票据套打功能
- VS常规选项卡里添加的语句块无法保存
- 如何放弃对象的构造?
- 请问代码实现(IE——Internet选项-->高级 找到"允许活动内容在我的计算机上的文件中运行" ,将其打上勾)?
- 有一个项目要做,功能就是如rose一样画uml图,可是没有思路,请孟子,思归等大侠进来帮忙!
- c#调用c++dll中的导出类
- DirectoryEntry c# 登陆验证
- c# 动态删除空间碰到 一个奇怪的问题
- NPOI2.0中如何取消公式?
- access2017 winform无法连接32位的access2016(Office365 MSO 16.0.11629.20238)如何解决
- 关于以读字节流方式读取图片的问题
- 飞信的验证图片是一串以xml传输的字符串,怎样还原成图片
{
this.DataGrid1.EditItemIndex = e.Item.ItemIndex;
//BindData(); }
{
this.DataGrid1.EditItemIndex = e.Item.ItemIndex;
BindData();
}
你没有保存又重新绑定了?
去掉bindbata后,下拉里框中就没有值了