C# Winform窗体间传值

看了很多的传值方法 ,自己用的以下的方法 :

首先有数据显示窗体A 和编辑用户信息窗体B

双击A窗体中的某一行 弹出B窗体 并显示A窗体点击某行的信息;

第一步:

在A窗体中写以下代码:

 private static string strTxtName;
        private static string strTxtPass;
        public string passText
        {
            get { return strTxtPass; }
        }
        public string userText
        {
            get { return strTxtName; }
        }

  以上代码中的passtext,userText就是B窗体中所要调用的值。

然后在datagridview的单击事件中

 strTxtName = dataGridView1.Rows[rowindex].Cells[1].Value.ToString(); ;
            strTxtPass = dataGridView1.Rows[rowindex].Cells[2].Value.ToString();

  就是和两个变量赋值。

第二步:在B窗体中显示信息

在B窗体中要引用A的两个变量值 必须定义A窗体对象 

Form1 f1 = new Form1();
            textBox1.Text = f1.userText.ToString();
            textBox2.Text = f1.passText.ToString();

  其中的Form1 代表的是A窗体  f1是A窗体的定义对象。

f1.userText就是调用的变量值。

效果图如下:

关于窗体 传值 我这样写可能会存在问题。

如果一个datagridview存在几十个字段,要想全部显示 就要定义 几十个变量 

这是麻烦的地方但没找到解决 的方法  

哪位朋友有更好的方法 多指教~~~

posted @ 2012-05-09 16:16  念余温  阅读(374)  评论(0编辑  收藏  举报