2011-07-12 169 views
1

我有多种形式中,基于应用我有一些条目的形式,如果在输入表单填充和提交按钮,然后点击我想在主要形式状态条显示提交状态状态消息

我用这样的而不是工作

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

示例代码首选..

回答

3

这将帮助你

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"; 
     } 
    } 

} 
2

你有两种选择,你可以从你的问题中选择什么选项。

第一:

让你的“数据输入表单”从一些基本的类定义委派状态变化,该委托这样

public delegate void StatusChange(string Status); 
public event StatusChange OnStatusChange; 

事件派生现在您的主要形式订阅像这样

SomeDataEntry de = new SomeDataEntry(); 
de.OnStatusChange += StatusChanger; 
de.Show(); // or whatever 

形式创建的每个数据输入表单事件做

if (OnStatusChange!=null) { 
    OnStatusChange("status text"); 
} 

和主要形式做

void StatusChanger(string Status) 
{ 
    status.Text=Status; 
} 

二:

这样做CHANDAN建议,但请不要让成员静态的,而是有一个接口,一个成员,从派生它将接口传递给数据输入表单,并调用其方法来更新数据输入表单中的状态文本。

+0

做好@Daniel Mosmondor先生 –

+0

问的路程,如果需要更多的信息 –

+0

谢谢丹尼尔Mosmonder ......现在想它的所有工作正常,我需要 –