应无所住,而生其心
排名
1
文章
860
粉丝
112
评论
163
net core webapi post传递参数
庸人 : 确实坑哈,我也是下班好了好几次,发现后台传递对象是可以的,但...
百度编辑器自定义模板
庸人 : 我建议换个编辑器,因为现在百度富文本已经停止维护了,用tinymec...
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

c# winfrom跨窗体传值

3845人阅读 2017/3/4 15:20 总访问:5182450 评论:0 收藏:0 手机
分类: .NET

微凉晨光里,再次见到你,笑得很甜蜜



其实只要能拿到彼此的对象,那么相互传值,相互访问就很好实现了。

所以只需要在主窗体实例化子窗体的时候把自己的对象传递过去就行了,也就是传递一个this即可,可以通过构造函数传递

示例代码如下:

主窗体:

  1. public partial class Form1 : Form
  2. {
  3.     public Form1()
  4.     {
  5.         InitializeComponent();
  6.         treeView1.Nodes.Add("aaa");
  7.         treeView1.Nodes.Add("bbb");
  8.     }
  9.     //提供一个方法,让子窗体可以调用
  10.     public void AddTreeNode(string name) 
  11.     {
  12.         treeView1.Nodes.Add(name);
  13.     }
  14.     private void button1_Click(object sender, EventArgs e)
  15.     {
  16.         //在实例化子窗体的时候,把自己的对象给子窗体
  17.         AddForm addform = new AddForm(this);
  18.         addform.StartPosition = FormStartPosition.CenterScreen;
  19.         addform.ShowDialog();
  20.     }
  21. }

子窗体:

  1. public partial class AddForm : Form
  2. {
  3.     public AddForm()
  4.     {
  5.         InitializeComponent();
  6.     }
  7.     Form1 from1;
  8.     public AddForm(Form1 _from1)
  9.     {
  10.         InitializeComponent();
  11.         from1 = _from1;
  12.     }
  13.     private void button1_Click(object sender, EventArgs e)
  14.     {
  15.         //调用主窗体的方法
  16.         from1.AddTreeNode(textBox1.Text);
  17.         this.Close();
  18.     }
  19. }


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价