从另一个表单中以主窗体显示状态

时间:2011-07-09 17:15:59

标签: .net visual-studio c#-4.0

我有多个基于表单的应用程序,因为我有一些输入表单,如果在输入表单填写并单击提交按钮,那么我想显示主表单状态中的提交状态 - 条

我这样使用但不能正常工作

Main status = new Main();
status.workStatusStrip.Text = "Submitted Successfully";

示例代码首选..

2 个答案:

答案 0 :(得分:1)

这一行:

Main status = new Main();

创建一个新的 Main表单,而不是您的原始表单(并且您没有看到它,因为您没有Show()它。)

在设置属性之前,您需要对原始Main表单的引用,但这样做会导致不同形式之间的耦合(不是一件好事)。

实现目标的一种方法是在第二个表单上有一个事件处理程序,当单击该按钮时会触发该事件处理程序并从Main表单订阅它,您将在其中设置状态。

答案 1 :(得分:0)

旧的静态全局(请记住vb?)

WindowsFormsApplication1
{
public partial class Form1 : Form
{
    static Label statusMessageLabel;
    public static string StatusText { set { statusMessageLabel.Text = value; } }

    public Form1()
    {
        InitializeComponent();
        statusMessageLabel = label1;

        // from anywhere ->
        Form1.StatusText = "a message";
    }
}

}