如何从子表单更改mdi statusstrip标签

时间:2011-04-16 09:14:08

标签: c# label mdi statusstrip

我一直在寻找几天的解决方案,但找不到简单的答案。 我已经尝试了在互联网上发现的一些例子(代表,属性,甚至破坏OOP使一切公开)但这些似乎都没有。 有人可以为以下问题编写一个最简单的代码:

我有MDI父表单和子表单。 MDI父表单具有状态条标签。子表单有一个按钮。我想要做的就是点击子表单按钮更新MDI标签。

感谢!!!

2 个答案:

答案 0 :(得分:7)

这不是最好的解决方案。但是,这是最简单的一个:

1-将状态条标签的访问修饰符更改为public。

2-将父表单解包为其真实类型,以便能够访问标签:

((ActualMdiParentFormType) this.MdiParent).statusStripLabel.Text = "Value";

答案 1 :(得分:1)

还有另一种解决方案是在子窗口中创建一个事件,并将父窗口注册到该事件。如果事件触发,将通知父窗口,并且在父窗口的相应事件处理程序中,我们可以更新OUR控件。

这是一个更多" MVVM"喜欢的方法。

检查这些链接以获取更多信息:

Pass value between forms using events

http://www.c-sharpcorner.com/uploadfile/yougerthen/mvvm-implementation-for-windows-forms/

MVVM: Tutorial from start to finish?

希望有所帮助,