如何在主窗体中传递一个信息给子窗体.
(信息可以是自定义的数字,主要是起个标识的作用,子窗体根据这个标识可以作出相关的操作)

解决方案 »

  1.   

    可以在子窗体定义一些属性,
    在show子窗体之前,new一个子窗体的对象,然后给对象.属性赋值 就可以了
      

  2.   

    窗体间才传值?参考:
    http://hi.baidu.com/kingboy_wrx/blog/item/44a3f41fed0bc367f624e488.html
      

  3.   

    我想在C#中用PostMessage传递消息
      

  4.   

    主窗体子窗体的,就尽量不要用PostMessage了。
      

  5.   

    直接用属性   set  get还不是可以的 方法很多呀
      

  6.   

    感觉不怎么合适使用PostMessagePostMessage要调用API,发送出去的消息,整个Windows都可以侦听到的
      

  7.   

    那你就调用win32api中的postmessage就可以了。是不是问题可以转为如何调用WIN32API?
      

  8.   


    在主窗体中单击菜单,弹出一个对话框,对话框中再单击一个命令按钮(实际上是赋值一个全局变量),
    这样在主窗体中的后台线程中,获取这个变量后完全一个操作,不管成功与否,都会使用PostMessage 发送一个消息到刚才弹出的对话框中.
    对话框再根据回来的信息,弹出消息提示.
      

  9.   


    那就调用win32API里面的postmessage 吧……无敌的……
      

  10.   


    void Dialog_OnButtonClick(...)
    {
        parentForm.JobCompleted += this.OnParentJobCompleted;
        parent.StartJob();
    }void OnParentJobCompleted(object sender, string status)
    {
        parentForm.JobCompleted -=  this.OnParentJobCompleted;    MessageBox.Show( status );
        this.Close();
    }
      

  11.   

    可以用Invoke调用窗体的方法。