如何检查一个控件是否是另一个控件的子控件? “Control.IsChildOf”

2024-04-05

我有 3 个面板:

<asp:Panel ID="ParentPanel" runat="server">
    <asp:Panel ID="AnnoyingPanel" runat="server">
        <asp:Panel ID="P" runat="server">
        </asp:Panel>
    </asp:Panel>
</asp:Panel>

我怎样才能检查是否P是的孩子ParentPanel?有一些 LINQish 的方法吗?

有没有比我提供的更优化的方法?也许使用 Linq?


我最终制作了一个递归扩展方法

public static bool IsChildOf(this Control c, Control parent)
{
    return ((c.Parent != null && c.Parent == parent) || (c.Parent != null ? c.Parent.IsChildOf(parent) : false));
}

导致

P.IsChildOf(ParentPanel); // true
ParentPanel.IsChildOf(P); // false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查一个控件是否是另一个控件的子控件? “Control.IsChildOf” 的相关文章

随机推荐