把窗体传给另一个窗体最基础方法

这是form1 1  public partial class Form1 : Form
 2     {
 3
 4         public Form1()
 5         {
 6             InitializeComponent();
 7         }
 8
 9         //第一种方法示例事件
10         public void changetext(string s)
11         {
12             this.textBox1.Text = s;
13         }
14
15         //第一种方法
16         private void button1_Click(object sender, EventArgs e)
17         {
18             //将整个窗体作为值传给Form2
19             var frm2 = new Form2(this);
20             frm2.ShowDialog();
21         }
22
23         private void Form1_Load(object sender, EventArgs e)
24         {
25
26         }
27
28    }

这是Form2中代码:

 1 public partial class Form2 : Form
 2     {
 3         //这是第一种方法
 4         private Form1 f1;
 5         public Form2()
 6         {
 7             InitializeComponent();
 8         }
 9
10         public Form2(Form1 frm1)
11         {
12             InitializeComponent();
13             f1 = frm1;//将传过来的Form1全部赋值给f1,这样就可以在这边调用Form1了
14         }
15
16         private void Form2_Load(object sender, EventArgs e)
17         {
18
19         }
20
21         private void numericUpDown1_ValueChanged(object sender, EventArgs e)
22         {
23             //这是第一种方法
24             //调用Form1中的changetext事件
25             f1.changetext(numericUpDown1.Value.ToString());
26         }
27
28     }

出处http://blog.csdn.net/qiujialongjjj/article/details/8229308

来自凌波小屋----冯和超的笔记----

注意多看看委托

时间: 2024-11-10 01:58:54

把窗体传给另一个窗体最基础方法的相关文章

c#中在一个窗体中触发另一个窗体的事件

c#中在一个窗体中触发另一个窗体的事件 创建两个窗体,分别为form1,form2,在form1中添加控件textBox1和button1,创建一个form2的对象Form2 b = null; 在form2中添加button1,定义委托和事件 //定义委托 public delegate void MyDelegate(); //定义事件 public event MyDelegate MyEvent; 给form2中的button1添加消息相应函数并做修改 private void butt

在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体

在C#中使用Panel控件实现在一个窗体中嵌套另一个窗体ShowAllPage sAllPage = new ShowAllPage();          //  sAllPage.FormBorderStyle = FormBorderStyle.None;           // sAllPage.Dock = DockStyle.Fill;            sAllPage.TopLevel = false;            this.MainPanel.Controls.

一个程序通过窗体句柄控制另一个窗体

接下来,我们来演示不同程序中,怎么通过窗体句柄控制其它程序窗体. 演示的例子是:控制系统的记事本窗体,先移动,再最大化,最后关闭 要求:桌面上有一个记事本,名称是:测试文本.txt - 记事本,保证是打开的 界面只有一个按钮,btnCloseText 引用的windowapi函数dll如下: /// <summary> /// 获取窗体的句柄函数 /// </summary> /// <param name="lpClassName">窗口类名<

WinForm窗体中如何在一个窗体中取到另一个窗体的值

例如我们定义两窗体,Form1和Form2,如何在Form2中取到Form1中的一个值呢? 解决方法: 我们可以在Form2的类MyClass中定义一个静态变量,例如 public static string a = " "; 然后给这个静态变量赋值,例如 a = lblname.text; 由于静态变量的作用范围可以跨类,所以在Form1的方法中我们可以直接使用Form2的类MyClas进行调用Form2的静态变量a MyClass.a; 这样就完成了WinForm中从一个窗体中取得

通过一个窗体操作另一个窗体

1 Form1 F1 = null;//建立一个空的Form1对象 2 public Form2(Form1 f1) 3 { 4 InitializeComponent(); 5 F1 = f1;//放Form1的对象等于传进来的Form1窗体,而不是新建一个Form1,然后就可以通过F1操作Form1中的方法 6 } 向方法中传一个控件,不是像传变量一样仅仅传进去一个值,而是可以直接对控件进行操作.

判断一个窗体是否被完全遮挡(比较有意思,但这招有什么用呢?)

private void Form1_Paint(object sender, PaintEventArgs e){    Text = e.ClipRectangle.Width.ToString();} 在窗体的Paint事件中,有一个ClipRectangle的属性,解释为“获取要在其中进行绘画的矩形”这个属性的作用就是:窗体在刷新的时候,为提高效率一些被遮挡的区域就不用再绘制.那么判断窗体是否被完全遮挡,只需要判断刷新时是否产生有效绘制. bool windowPaint = false

只开启一个窗体和进程以及多线程的操作

只开启一个窗体: 1 Form1 F1 = null; 2 public Form2(Form1 f1) 3 { 4 InitializeComponent(); 5 F1 = f1; 6 } 7 8 private void Form2_FormClosed(object sender, FormClosedEventArgs e) 9 { 10 F1.Close(); 11 } 12 13 List<Form> list = new List<Form>();//建立一个可以存

一个窗体里打开一张图片,点击button,跳转到另一个窗体里,让该窗体显示同一张图片该怎么实现898

一个窗体里打开一张图片,点击button,跳转到另一个窗体里,让该窗体显示同一张图片该怎么实现 baozoumanhua.com/users/17195301/talkingsbaozoumanhua.com/users/17195301/following_articlesbaozoumanhua.com/users/17195301/articlesbaozoumanhua.com/users/17195356baozoumanhua.com/users/17195356/forum_art

C# 设置MDI子窗体只能弹出一个的方法

Windows程序设计中的MDI(Multiple Document Interface)官方解释就是所谓的多文档界面,与此对应就有单文档界面 (SDI), 它是微软公司从Windows 2.0下的Microsoft Excel电子表格程序开始引入的,Excel电子表格用户有时需要同时操作多份表格,MDI正好为这种操作多表格提供了很大的方便,于是就产生了MDI程序. 新建一个WindowForm程序.得到一个窗体作为我们父窗体Parent.拖入一个menustrip空间.在新建一个窗体FrmCh