首页 > 解决方案 > 我有 A 类,其中包含 B 类,我想在 B 类中使用 A 类而不实例化 A 类

问题描述

希望标题相当清楚,但这里有更多细节:

A 类包含一个 ChromeDriver 变量和对其进行操作的方法。我在 A 类中定义了代表菜单的 B 类,我需要访问 B 类中 A 类的一些方法。

提出问题的另一种方式:如何在不创建 A 类的另一个实例的情况下从 B 类(内部类)访问 A 类(外部类)?

我对 C# 还是很陌生,到目前为止还没有找到一种方法来做到这一点,到目前为止我的研究只是出现了死胡同。可能吗?如果没有,为什么不呢?

感谢您在正确方向上的任何答案和指示!

- 更新 -

抱歉耽搁了这么久,这里是需要上述情况的情况:

 public sealed class CatalogPane
 {

    protected CatalogPane(Application application, string automationId, int index)
    {
        Pane = application.MainWindow.FindElementByClassName("CatalogMenu")
            .Where(item => item.AutomationId().StartsWith(automationId))
            .ElementAtOrDefault(index);
    }

    public AppiumWebElement Pane { get; set; }

    public static class contextMenu
    {       

        public static void Select(MenuOption option) // MenuOption has property id that holds an automationId
        {
            Pane.FindElementByAccessibilityId(option.id).Click(); // I do not have access to Pane so this is not possible. I would like to be able to do this.
        }

    }
 }

标签: c#classscopechromium

解决方案


抱歉-这确实应该是评论,但是我没有足够的声誉点来评论...如果您需要在内部类中使用外部类中的方法,听起来您的分工是错误的(您的对象应该做他们需要做的事情)。但是没有看到任何代码,我们无法知道您的实际目标是什么。也许它应该是 B 类的方法,如果你在 A 类中需要它,那么使用 B 的实例?


推荐阅读