gpt4 book ai didi

c# - 在 aspx 上获取 ascx

转载 作者:太空宇宙 更新时间:2023-11-03 19:28:02 27 4
gpt4 key购买 nike

我有一个 UserControl,它由显示在 aspx 页面上的父 UserControl 和子 UserControl 组成。我需要从子控件中获取 Parent UserControls 的实例。 Parent 有一组嵌套的 .net 控件,在这些嵌套控件中显示了子 UserControl,所以如果我从子 UserControl 使用它

MyControl _myControl = (MyControl)this.Parent.Parent.Parent.Parent.FindControl("MyControl");

其中 (this) = 子控件和 (Parent.Parent.Parent.Parent) 带我回到树上真正的父级。

这会让我到达那里,但似乎还有更好的方法。有什么建议吗?

最佳答案

一个 ascx 不应该知道关于它的父类的任何信息:这表明它与其他类的耦合过于紧密。它们也可能是一个类。

另一种方法是遵循 law of Demeter : 从 MyControl 中找出 this(您的用户控件)需要什么,将其设为属性,并让您的 aspx 提供它而不是请求它。

关于c# - 在 aspx 上获取 ascx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7115847/

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