gpt4 book ai didi

ASP.NET:如何访问动态创建的控件

转载 作者:行者123 更新时间:2023-12-02 22:23:10 26 4
gpt4 key购买 nike

我正在动态创建一堆复选框:

CheckBox chkRead = new CheckBox();
chkRead.ID = "chk1";
chkRead.AutoPostBack = true;
chkRead.CheckedChanged += new EventHandler(CheckBox_CheckedChanged);

CheckBox chkPost = new CheckBox();
chkRead.ID = "chk2";
chkPost.AutoPostBack = true;
chkPost.CheckedChanged += new EventHandler(CheckBox_CheckedChanged);


protected void CheckBox_CheckedChanged(object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;


}

我想做的是: 当我选中 chkPost CheckBox 时,我希望也选中 chkRead CheckBox

CheckBox_CheckedChanged 事件中,我只能访问被单击的 CheckBox 但我不知道如何选中该事件的另一个复选框。

最佳答案

这是凭内存,但你可以这样做:

protected void CheckBox_CheckedChanged(object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;
CheckBox chkPost = (CheckBox) chk.NamingContainer.FindControl("chk2");
CheckBox chkRead = (CheckBox) chk.NamingContainer.FindControl("chk1");
if(chk == chkPost && chk.Checked)
{
chkRead.Checked = true;
}
}

这是假设您想在回发后在代码隐藏中执行所有这些操作。如果你想用 javascript 来做,那就是另一个问题了。

这还假设 chk1chk2 在同一个命名容器中。如果他们不是,事情会变得复杂。

关于ASP.NET:如何访问动态创建的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13384089/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com