动态控件数据取得问题,值得一看!

Oldman 2002-07-25 09:25:16
加精
在一个webform上,有一个panel控件,上面动态添加了几个dropdownlistbox
控件,如何才能取得在客户端修改后的数据(即选取的ITEM是哪几个),代码应该如何写?
...全文
59 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Oldman 2002-07-31
  • 打赏
  • 举报
回复
這方法不錯!
howbigsea 2002-07-30
  • 打赏
  • 举报
回复
good
icyer 2002-07-30
  • 打赏
  • 举报
回复
添加控件要在OnInit或者Page_Load里面,这样在页面返回刷新后才能找到。
建议你这样做:
在Button的Click事件里面加入:
ViewState["Flag"] = "Add"
Response.Redirect("this page's url");
然后在Page的OnInit事件里面加入:
if (ViewState["Flag"] != null && ViewState["Flag"].ToString() == "Add")
{
ddl = new DropDownList();
ddl.Items.Add("a");
ddl.Items.Add("b");
ddl.Items.Add("c");
this.Panel1.Controls.Add(ddl);
}
上面就是添加控件的过程。
然后你可以在另外一个Button的Click事件里面读取:
this.TextBox1.Text = ((DropDownList)(this.Panel1.Controls[1])).SelectedItem.Text;

Good luck.
Oldman 2002-07-30
  • 打赏
  • 举报
回复
我用的是Panel_sel.Controls(currentcontrol)取值,但你们好象没有把问题给看清楚,在page_load下生成的控件,肯定能在一个button下找到,但我的控件是在一个button下生成的,在另一个button下去取值,我说的一点都没有错,在panel上一个控件都没有了,怎样才能让在一个button下生成的控件,在同一网页上的另一个button下访问到,前一个button下生成的控件,并且能将数据取回?
superkiller 2002-07-26
  • 打赏
  • 举报
回复
要不是有这么多广告
我还觉的你很可爱!
superkiller 2002-07-26
  • 打赏
  • 举报
回复
我把dd1定义为一个字段
他的方法还是正确.
freesoul_ms 2002-07-26
  • 打赏
  • 举报
回复

To shenghuayi(oldman):
上面的例子是直接从DropDownList中取出SelectedItem的值,如果您要从Panel中取的话,可以这样:
this.TextBox1.Text = ((DropDownList)(this.Panel1.Controls[1])).SelectedItem.Text;
注意Panel中有两个Control,Panel1.Controls[0]是一个LiteralControl,用来显示Panel名字,Panel1.Controls[1]才是您需要的DropDownList。

希望能对您有所帮助!

======================
- 微软全球技术中心

本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
======================
Oldman 2002-07-26
  • 打赏
  • 举报
回复
to: freesoul_ms([微软] 最后的白鸟)
请你在Button1_Click下面测试一下panel1上面还有没有空件,我测试了一下好像一个也没有了。
GumPGZ 2002-07-26
  • 打赏
  • 举报
回复
楼上是不是盗版阿
freesoul_ms 2002-07-25
  • 打赏
  • 举报
回复
感谢您使用微软产品。

您的问题应该很容易解决,请参考下面例子代码:

private void Page_Load(object sender, System.EventArgs e)
{
ddl = new DropDownList();
ddl.Items.Add("a");
ddl.Items.Add("b");
ddl.Items.Add("c");
this.Panel1.Controls.Add(ddl);
}

private void Button1_Click(object sender, System.EventArgs e)
{
this.TextBox1.Text = this.ddl.SelectedItem.Text;
}

希望能对您有所帮助!

======================
- 微软全球技术中心

本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能

带来的风险。具体事项可参见使用条

款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调

查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))


======================

62,046

社区成员

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

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

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

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