c# – 如何在整个应用程序中运行类的实例
发布时间:2020-12-16 01:49:40 所属栏目:百科 来源:网络整理
导读:我知道标题可能不清楚,我为此道歉. 所以我在visual studio中有2个表单,在第一个表单中用户登录到系统,第二个表单是其他一切发生的地方. 我在第一种形式中调用了一个名为info的类,该类负责收集用户信息并检查登录等.当用户登录系统时,该类获取用户ID并将其存
我知道标题可能不清楚,我为此道歉.
所以我在visual studio中有2个表单,在第一个表单中用户登录到系统,第二个表单是其他一切发生的地方. 我在第一种形式中调用了一个名为info的类,该类负责收集用户信息并检查登录等.当用户登录系统时,该类获取用户ID并将其存储到私有字符串中.从那里程序进入第二种形式. 现在这里是我的问题,我如何使这个类全局,所以我可以从第二个表单访问存储的userID?我可以创建该类的另一个实例(info myinfo = new info())吗? PS我是面向对象概念的新手,所以请用户轻松的条款. 解决方法
就个人而言,我会投反对票.相反,我通常采用以下方式:
在调用表单1的代码中,通过属性从表单中获取参数.然后通过第二个表单上的参数将其传递给第二个表单. 例如.: void Main() { var form1 = new Form1(); form1.ShowDialog(); var info = form1.GetInfo(); var form2 = new Form2(); form2.SetInfo( info ); form2.ShowDialog(); } 如果你真的坚持全球课程,请查看Singleton pattern,作为wsanville pointed out.基本上它大致如下: public sealed class Info { private static Info _instance; private static readonly object _lock = new object(); // Private to disallow instantiation. private Info() { } public static Info Instance { get { lock (_lock) { if (_instance==null) { _instance = new Info(); } return _instance; } } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |