以另一种形式存储数据的保护问题

时间:2018-12-04 13:11:56

标签: c# .net winforms access-modifiers protection

我正在尝试将一种形式的字符串存储到另一种形式的标签中。但是,这样做时,由于其保护级别,因此无法完成。有想法该怎么解决这个吗?

 maskedTxtLogin.Text = FormInvisible.lblInitials.Text();

2 个答案:

答案 0 :(得分:2)

控件在表单设计器中作为 private 字段生成:

private System.Windows.Forms.Label lblInitials;

如果要在表格之外访问它们,则需要为其创建一个property。要查看以上声明并为其编写属性,只需在代码中右键单击lblInitials,然后在其中单击转到声明(或 Definition )即可。您导航的类编写以下代码:

public Label LblInitials
{
    get { return lblInitials; }
    set { lblInitials= value; }
}

此外,您还需要创建表单的新实例来访问此属性:

FormInvisible fr = new FormInvisible();
maskedTxtLogin.Text = fr.LblInitials.Text;

答案 1 :(得分:1)

这是更改保护级别的另一种方法

打开FormInvisible.Designer.cs

寻找private System.Windows.Forms.Label lblInitials;

将访问修饰符从private修改为public

或者您可以打开控件的属性,并将 Modifiers private 更改为 public

enter image description here

相关问题