总结C#中窗体间传递数据的几种方法 (由别人的方法整理) 在编写C#windows 应用程序的时候我们经常会遇到这种问题,怎么样在两个窗体间传递数据呢
以下是我整理的网上的各种方法,在遇到一个实际问题:在form1 中打开一个form2 窗口作为录入界面,将录入的值经转换后在form1 中显示
采用了委托的方法,可以实现
(与 VC的回调的应用相似) 1.可以通过委托的方法来解决 问题:通过 form1 做一个录入界面,将里边通过文本框录入的数值复值给 form2 中的listview 各列,用3 个textbox1
text 举例吧,分别对应listview 的3 个列
可以这么做,如果两个窗体是在同一个命名空间下 定义一个代理,注意这个代理是全局的:(即同一命名空间下,与 Form1,Form2 平级的) public delegate void MyInvoke(string Item1,string Item2,string Item3); //在窗体From2 中有这么一个回调函数,用于在ListView 里添加一个新项的: private void UpdateListView(string Item1,string Item2,string Item3) { ListView1
Add(Item1); ListView1
Items[ListView1
Count - 1]
SubItems
Add(Item2); ListView1
Items[ListView1
Count - 1]
SubItems
Add(Item3); } //比如说点击 Form2 的一个按钮弹出 Form1 进行录入,在点击按钮的事件下: //把委托传过去 Form1 frmEdit=new Form1(new MyInvoke(Updat