如何获取动态创建的用户控件的标签文本?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (43)

我有一个用户控件,其中包含一个名为的标签label1,我使用以下代码将用户控件插入面板: -

        var myControl = new WindowsFormsApp4.library();
        panel1.Controls.Add(myControl);

因此,用户控件内的Label将注册到面板中。如何在label1.Text未在面板中生成标签的情况下编写获取值的代码?

我试图使用此代码: -

var myControl = new WindowsFormsApp4.library();
string s = myControl.label1.Text

但它不起作用,因为它创建了一个全新的用户控件,而插入面板值的用户控件在运行时更改。

提问于
用户回答回答于

将控件存储在字段而不是局部变量中

public partial class Form1 : Form
{
    MyControl _myControl; // Use the real type name for your control here.

    public Form1()
    {
        InitializeComponent();
    }

    ...
}

然后用它创建它

_myControl = new WindowsFormsApp4.library();
panel1.Controls.Add(_myControl);

并使用它访问它

string s = _myControl == null ? "" : _myControl.label1.Text;

所属标签

可能回答问题的人

  • 应用案例分享

    1 粉丝490 提问5 回答
  • Hyman.W

    15 粉丝0 提问3 回答
  • 桑先生

    14 粉丝0 提问3 回答
  • 找虫虫

    5 粉丝0 提问3 回答

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动