我的功能很简单,在点击一个按钮的时候,弹出一个窗体,这个时候把已经设置好的控件传过去,为什么接受不到?代码如下 主窗体:        PAinputbudgetunitDialog paform;
        private void button4_Click(object sender, EventArgs e)
        {
          paform = new PAinputbudgetunitDialog(setTreeViewData(), setComboBoxData());
            paform = new PAinputbudgetunitDialog();
            if (paform.ShowDialog() == DialogResult.OK)
            {
                textBox7.Text = paform.textBox1.Text;            }
         }
  TreeView tree;       
        private TreeView setTreeViewData()
        {
            tree = new TreeView();
            tree.Nodes.Add("aaaa");           
            tree.Nodes.Add("bbbb");
            tree.Nodes.Add("cccc");            TreeNode ss = new TreeNode("ssssss");
            tree.Nodes.Add(ss);
            return tree;
        } 
        ComboBox comb;
        private ComboBox setComboBoxData()
        {
            comb = new ComboBox();
            comb.Items.Add("你好");
            comb.Items.Add("你好");
            comb.Items.Add("你好");
            comb.Text = "请选择";
            return comb;
        }    
第二个窗体:构造函数如下;
 public PAinputbudgetunitDialog(TreeView myTreeView,ComboBox mycombox)
        {
            InitializeComponent();
            this.treeView1 = myTreeView;
            this.comboBox1 = mycombox;
        }       让我更不可以理解的是这里 也不让添加进去,断点的时候集合的的个数在变化的,每点一次加三个,就是不显示的        
      private void button1_Click(object sender, EventArgs e)
        {
            comboBox1.Items.Add("dddd");
            comboBox1.Items.Add("cccc");
            comboBox1.Items.Add("aaaa");
            treeView1.Nodes[0].Nodes.Add("sssss");
        }
    
   高手快出现啊  ,等着要用的。

解决方案 »

  1.   

    为什么不回答 ,我自己解决一个问题 感觉控件直接赋值不行,我传一个数组,就可以解决Combox,可是treeview也要去定义数组吗? 那真的不是很方便, 为什么直接赋值给第二窗体不行的。我很奇怪。
      

  2.   

     你是指 没显示窗体吧 迷糊paform = new PAinputbudgetunitDialog(setTreeViewData(), setComboBoxData());
      paform = new PAinputbudgetunitDialog();你这只实例化了 没有显示 而且还实例化两次
    改成
    paform = new PAinputbudgetunitDialog(setTreeViewData(), setComboBoxData());
      paform.Show();
      

  3.   

    paform = new PAinputbudgetunitDialog(setTreeViewData(), setComboBoxData());
    paform = new PAinputbudgetunitDialog();
    调用了两次不同的构造,后面的会覆盖掉前面的实例
      

  4.   

    让我更不可以理解的是这里 也不让添加进去,断点的时候集合的的个数在变化的,每点一次加三个,就是不显示的 
    private void button1_Click(object sender, EventArgs e)
    {
    comboBox1.Items.Add("dddd");
    comboBox1.Items.Add("cccc");
    comboBox1.Items.Add("aaaa");
    treeView1.Nodes[0].Nodes.Add("sssss");
    }
    你这 就是点一次   comboBox1的item就加3个的  
      

  5.   

    paform = new PAinputbudgetunitDialog(setTreeViewData(), setComboBoxData());
      paform = new PAinputbudgetunitDialog();
      

  6.   

    用get,set  属性不就可以了吗
     string stru = "";
            public string Stru
            {
                get { return stru; }
                set { stru = value; }
            }