GridView中使用DDLB下拉列表框时,为什么变为编辑模式时,偶数行不会显示原来的对应数据项

netspies 2006-06-12 01:23:28
GridView中使用DDLB下拉列表框时,为什么变为Edit模式时,偶数行不会显示原来的对应数据项,
而当点击基数行的编辑按扭时,可以自动选上默认的项,代码如下:

protected void gridView_rowDataBound(object o, GridViewRowEventArgs e)
{
if (e.Row.RowState == DataControlRowState.Edit)
{
//当点偶数行的编辑按扭时,不进入到该if条件语句.为什么??????????????????
DataRowView rowview = (DataRowView)e.Row.DataItem;
string jg = rowview["jg"].ToString();
DropDownList list = (DropDownList)e.Row.FindControl("ddlbjg");
ListItem item = list.Items.FindByText(jg);
list.SelectedIndex = list.Items.IndexOf(item);
}
}


=========================================
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="bm,name"
DataSourceID="SqlDataSource1" Width="407px" OnRowDataBound="gridView_rowDataBound" AutoGenerateEditButton="true">
=========================================

当点偶数行的编辑按扭时,不进入到该if条件语句.为什么????????

该代码从帮助中直接拿来的啊.
...全文
238 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eddie005 2006-06-12
  • 打赏
  • 举报
回复
呵呵~ 详细一点,不留给别人“补充”的机会,把分全赚了~~ ^o^

偶还盼着早日“四星”~~~
wpfonline 2006-06-12
  • 打赏
  • 举报
回复
真详细呀
Eddie005 2006-06-12
  • 打赏
  • 举报
回复
这个问题很多人都没有注意到,一般都延用vs2003的习惯...
Eddie005 2006-06-12
  • 打赏
  • 举报
回复
所以,if语句应该改为:
if ((e.Row.RowState & DataControlRowState.Edit) != 0)
Eddie005 2006-06-12
  • 打赏
  • 举报
回复
DataControlRowState 枚举标识数据控件(例如 DetailsView 或 GridView)中行的状态。行的状态可以是一个 DataControlRowState 值或值的组合,因此使用按位运算来确定该行的状态是否包括一个 DataControlRowState 值而非一个等效测试。

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧