如何解决如何查找动态创建的按钮ASP.net的容器
我有一个WebForm,其控件是动态创建的,因为控件的数量可以变化。每个元素都是一个面板,其中包含一个文本框,一个DropDownList和一个Button。
每个控件都有一个唯一的ID,并且所有按钮都具有相同的clickEvent。在clickEvent的代码内,我想获取presedButton所属的面板的ID,以便可以从该面板的DropDownList中访问选择的值,并从TextBox中访问文本。
我该怎么做?
解决方法
private void button1_Click(object sender,EventArgs e)
{
var panelId = ((Button)sender).Parent.ID;
}
或者您可以直接获取控件
private void button1_Click(object sender,EventArgs e)
{
var myTextbox = ((Button)sender).Parent.Controls.OfType<TextBox>().FirstOrDefault();
var myDropDownlist = ((Button)sender.Parent.Controls.OfType<DropDownList>().FirstOrDefault();
}
或按控件ID:
private void button1_Click(object sender,EventArgs e)
{
var myTextbox = ((Button)sender).Parent.Controls.OfType<TextBox>().Where(x => x.ID == "textboxID").SingleOrDefault();
var myDropDownlist = ((Button)sender).Parent.Controls.OfType<DropDownList>().Where(x => x.ID == "dropdownlistID").SingleOrDefault();
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。