我试图将一个表单中的字符串存储到另一个表单中的标签中。但是,当这样做时,它说由于其保护级别而不能这样做。有什么解决办法吗?
maskedTxtLogin.Text = FormInvisible.lblInitials.Text();
bxjv4tth1#
这些控件在表单设计器中作为 private 字段生成:
private System.Windows.Forms.Label lblInitials;
如果你想在表单之外访问它们,你需要为它们创建一个property。要查看上面的声明并为其编写一个属性,只需右键单击代码中的lblInitials,然后单击 Go to Declaration(或 Definition),在你导航的类中编写以下代码:
lblInitials
public Label LblInitials { get { return lblInitials; } set { lblInitials= value; } }
你还需要创建一个新的窗体示例来访问这个属性:
FormInvisible fr = new FormInvisible(); maskedTxtLogin.Text = fr.LblInitials.Text;
zvms9eto2#
这是更改保护级别的另一种方法打开FormInvisible.Designer.cs查找private System.Windows.Forms.Label lblInitials;将访问修饰符从private修改为public也可以打开控件的属性,将**Modifiers从private更改为public**
FormInvisible.Designer.cs
private
public
Modifiers
2条答案
按热度按时间bxjv4tth1#
这些控件在表单设计器中作为 private 字段生成:
如果你想在表单之外访问它们,你需要为它们创建一个property。要查看上面的声明并为其编写一个属性,只需右键单击代码中的
lblInitials
,然后单击 Go to Declaration(或 Definition),在你导航的类中编写以下代码:你还需要创建一个新的窗体示例来访问这个属性:
zvms9eto2#
这是更改保护级别的另一种方法
打开
FormInvisible.Designer.cs
查找
private System.Windows.Forms.Label lblInitials;
将访问修饰符从
private
修改为public
也可以打开控件的属性,将**
Modifiers
从private
更改为public
**