gpt4 book ai didi

c# - 分组 ASP.net 服务器控件以修改属性而不按名称引用它们

转载 作者:行者123 更新时间:2023-11-30 21:11:49 25 4
gpt4 key购买 nike

我正在尝试从我的 aspx 页面的代码隐藏中动态设置多个框、面板、按钮等的 Visible 属性。我想知道是否有一种方法可以将服务器控件分组到某个逻辑组中,以便您可以执行类似以下伪代码的操作:

foreach(c in controlgroup) {
c.Visible = value
}

原因是页面根据 URL 中的 ID 参数显示不同种类的选项。我看过this question但我想知道除了使用用户控件还有其他方法吗?

编辑:如果我可以在 aspx 页面上设置组,而不必手动添加每个控件,那就太好了。

最佳答案

当然。您可以通过构建 List<Control> 对它们进行分组,然后遍历它。

var controlList = new List<Control>();
controls.Add(someTextBox);
controls.Add(someOtherTextBox);
// etc.

// elsewhere
foreach (var control in controlList)
control.Visible = false;

当然,如果您正在处理所有包含在公共(public)容器(窗体、面板等)中的控件,您可以简单地遍历其控件集合。

foreach (var control in theContainer.Controls)
control.Visible = false;

在这个简单的例子中,让容器本身不可见就可以完成这项工作。除了这些简单的方法之外,没有一种方法可以对我所知道的控件进行分组, 但我并不经常处理 UI。

关于c# - 分组 ASP.net 服务器控件以修改属性而不按名称引用它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7837487/

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