100分求助!高人请进!顶也给分!

shevins 2005-08-12 05:26:03
在一个DataGrid中添加一模板列
<asp:TemplateColumn HeaderText="考试情况">
<ItemTemplate>
<asp:dropdownlist id="dlTestState" Width="60px" Runat="server"></asp:dropdownlist>
</ItemTemplate>
</asp:TemplateColumn>
在DataBound事件中绑定这个下拉框,
DropDownList control = e.Item.FindControl("dlTestState") as DropDownList;
if (control != null)
{
control.DataSource = this.dvTestState;
control.DataTextField = "name";
control.DataValueField = "id";
control.DataBind();
}
运行后确实绑定了,任何提交动作使得页面回传的时候这个下拉框列表会自动清空,在PageLoad第一句都获取不到该值。
实在不解,请高人给点意见!
...全文
245 36 打赏 收藏 转发到动态 举报
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
Truly 2005-08-13
  • 打赏
  • 举报
回复
有没有在pageload中判断postback?

if(!IsPostBack)
BindGrid();
ztchen 2005-08-13
  • 打赏
  • 举报
回复
楼主,问你些关键问题,你的DataGrid的DataBind方法是在哪里调用的?
你为什么确定DataGrid的视图状态是保存的?
是不是应该在ItemCreate事件中去处理这些事?
skyfarwolf 2005-08-13
  • 打赏
  • 举报
回复

foreach(object a in Request.Form)
Response.Write(a.ToString()+"="+Request.Form[a.ToString()].ToString() );

要保存控件的数据就想它法吧!
skyfarwolf 2005-08-13
  • 打赏
  • 举报
回复



刷新是肯定的,你可以在PostBack时的Request.Form中找到这些元素的值。

lm9764 2005-08-13
  • 打赏
  • 举报
回复
接分
lingwu05 2005-08-13
  • 打赏
  • 举报
回复
我在使用DropDownList时都是先用ArrayList暂存数据,在用DropDownList绑定ArrayList
yjf_1982 2005-08-13
  • 打赏
  • 举报
回复
datagrid中绑定列,要在要先判断
if not ispostback then
DropDownList control = e.Item.FindControl("dlTestState") as DropDownList;
if (control != null)
{
control.DataSource = this.dvTestState;
control.DataTextField = "name";
control.DataValueField = "id";
control.DataBind();
}

end if
Alldim 2005-08-13
  • 打赏
  • 举报
回复
控件的Init事件中去绑定
zhuyunping 2005-08-13
  • 打赏
  • 举报
回复
帮你up
binsky 2005-08-13
  • 打赏
  • 举报
回复
u--------------------------p
真相重于对错 2005-08-13
  • 打赏
  • 举报
回复
楼主要达到什么效果?

jack1026 2005-08-13
  • 打赏
  • 举报
回复
Truly 2005-08-13
  • 打赏
  • 举报
回复
不知道楼主的dvTestState是如何得到的,可以先用一下代码确定是否dvTestState的问题
if (control != null)
{
control.control.Items.Add("0");
}
Truly 2005-08-13
  • 打赏
  • 举报
回复
athossmth你的问题是动态添加的控件,而楼主的是DataGrid中的子控件,是可以在ItemDataBound事件中处理的,也是可以保存状态的。
cherish58 2005-08-12
  • 打赏
  • 举报
回复
放在ViewState中就行啦
lionelwy 2005-08-12
  • 打赏
  • 举报
回复
wingnal 2005-08-12
  • 打赏
  • 举报
回复
就这么样看的话,不觉得有什么问题
是不是dvTestState获取数据时没有放到!ispostback中阿
如果没有,一刷自然就会将dvTestState刷空


======================================================
欢迎加入.net群:13817403(如果遭拒绝则说明群已满)

本人大四,下学期找工作了,各位兄弟帮帮忙
我的简历:http://202.118.70.40/winal/introduce.aspx
======================================================
qrongjin 2005-08-12
  • 打赏
  • 举报
回复
ding
Lamphic 2005-08-12
  • 打赏
  • 举报
回复
还不够料,顶一下!~
athossmth 2005-08-12
  • 打赏
  • 举报
回复
以上回答均错误。

你需要在DataGrid的ItemCreated事件中添加dropdownlist

参考
http://community.csdn.net/Expert/TopicView.asp?id=3603703
加载更多回复(16)

62,046

社区成员

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

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

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

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