更新动态生成的StatusStrip中的标签

时间:2014-06-14 14:36:39

标签: c#

我有一个类,其功能是根据程序中其他位置的首选项和条件返回状态条。然后将返回的状态条添加到表单中。

如果我使用Visual Studio的设计器,我可以通过名称访问条带内的标签,因为它们是在表单的类中创建的。如果在另一个类中创建了条带,我不确定如何访问返回的条带中的标签。

//statusStrip is declared as a new StatusStrip() at beginning of this form's class
statusStrip = myStripBuilderClass.GenerateStatusStrip();
this.Controls.Add(statusStrip);
//statusStrip now appears in form with the appropriate labels and such.

假设在statusStrip中有一个名为“mousePosition”的标签,我该怎么做才能访问mousePosition.Text?当对条带或条带项使用Add()时,它实际上并没有将它添加到类中,因此intellisense不会反映已添加的内容。

1 个答案:

答案 0 :(得分:0)

与所有其他控件一样,StatusStrip具有Controls集合,您可以按名称访问成员。

因此,如果您有Label' mousePosition'在StatusStrip' statusStrip'您可以像这样设置Text

statusStrip.Controls["mousePosition"].Text = "my mouse is at home";

显然,您希望为所有标签等设置好名称,但是' mousePosition'听起来像你这样做..

至于智能感知,我担心你不得不做它的支持。