在c#中可以做些什么?

use*_*206 0 c# forms get

我从其他地方获取此代码,以便有效地显示和隐藏表单.虽然我理解其中的大部分内容,但我不明白在这种背景下和一般情况下会发生什么.这可以解释一下吗?的WinForms

public class FormProvider
{
    public static Form1 frm1
    {
        get
        {
            if (_frm1 == null)
            {
                _frm1 = new Form1();
            }
            return _frm1;
        }
    }
Run Code Online (Sandbox Code Playgroud)

Tig*_*ran 5

除了自动生成的函数的语法包装之外别无他法

public static Form1 get_frm1()
{       
   return _frm1;       
}
Run Code Online (Sandbox Code Playgroud)

所以每次你引用时FormProvider.frm1,就像你在呼唤一样FormProvider.get_frm1()

事实上,如果你尝试编码这样的代码:

public class A {

    public string Name {get;}

    public string get_Name() {
       return "James Bond";
    }
}
Run Code Online (Sandbox Code Playgroud)

它会产生编译时错误,因为存在定义冲突.