父窗体、子窗体关系设置

父窗体内函数:

/// <summary>
  /// 电台频率框获取焦点后 弹出数字窗口
  /// </summary>
  /// <param name="sender"></param>
  /// <param name="e"></param>
  private void txtFrequency_Enter(object sender, EventArgs e)
  {
   DigitDialog fsDigit = new DigitDialog();
   this.AddOwnedForm(fsDigit);//添加这句

fsDigit.Show();
  }

子窗体内函数:

private void btnNum0_Click(object sender, EventArgs e)
  {
   Button btnNumber = sender as Button;
   Form fParent = (Form)this.Owner;//获取父窗口
   if (null != fParent)
   {
    foreach (Control crtl in fParent.Controls)
    {

//添加代码

}

}

}

父窗体、子窗体关系设置

时间: 2024-10-09 16:18:10

父窗体、子窗体关系设置的相关文章

C# WinForm 父窗体 子窗体 传值

C# WinForm 父窗体 子窗体 传值 本次示例效果如下:Form1为父窗体(包含textBox1.button1)Form2为子窗体(包含textBox2.button2) 父窗体给子窗体传值==================1.点击Form1的button1 打开Form2  父窗体给子窗体传值 可以调用重载子窗体的构造函数 直接传入相关数值 public partial class Form1 : Form    {        public Form1()        {   

C#父、子窗体间传值等

这是老生常谈的一个问题,百度上太多方法了,对错先不说.只想介绍最简单.明了的方法 这里介绍两种方法: 1.无参 2.有参 前提: 1.不管什么方法,窗体间传值,要被调用 的方法.控件.函数等等,修饰符都要先设置为Public 2.新建父.子两个窗体 主窗体 Main: 子窗体 Child: 一,无参(大部分人喜欢用这种) 只介绍一点:Owner属性,VS的解释:获取或者设置拥有此窗体的窗体   ,换种通俗的说法,说明它支持读取和修改. Main后台代码: namespace MainChild

【解惑】C#父窗体子窗体

这个问题我当时学的时候也困惑了好久,今天看见有人问就好好解释下吧~ [问]父窗体调用子窗体,怎么显示子窗体关闭父窗体? [答]在不牵扯到线程的情况下,主窗体是不能关闭的,一关闭程序就退出了,应该隐藏,提供两种方法: 最简单的方法: [父窗体中加]Form2 f2 = new Form2();f2.Show();this.Hide();[扩]因为主窗体只是隐藏,不是真正意义上的关闭  Application.Exit(); //应用退出————————————————————常用方法:(这个方法,

(转载)c# winform 用子窗体刷新父窗体,子窗体改变父窗体控件的值

第一种方法: 用委托,Form2和Form3是同一组 Form2 C#代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace TestMouseMove { public delegate void

Winfrom子窗体刷新父窗体

本人比较懒,直接从网上转载了一篇比较合适的文章,只是文章格式有点乱,地址是 http://aspnet.blog.163.com/blog/static/17515510920121126104433237/ 调用窗体(父):Form1,被调用窗体(子):Form2 方法1:   所有权法//Form1://需要有一个公共的刷新方法public   void   Refresh_Method(){//...}//在调用Form2时,要把Form2的所有者设为Form1Form2   f2   =

Winform子窗体刷新父窗体

调用窗体(父):Form1,被调用窗体(子):Form2方法1:   所有权法//Form1://需要有一个公共的刷新方法public   void   Refresh_Method(){//...}//在调用Form2时,要把Form2的所有者设为Form1Form2   f2   =   new   Form2()   ;f2.Owner   =   this;f2.ShowDialog()   ;//Form2://在需要对其调用者(父)刷新时Form1   f1   ;f1   =  

Delphi MDI程序 父窗体如何调用当前活动子窗体的函数/过程

一个MDI文本文件编辑器打开了N个子窗体子窗体的.pas文件有一些public的过程和函数我想在父窗体调用当前活动的子窗体函数我用Self.ActiveChildForm无法调用直接frmEdit.xxxx运行出错求大家指导,谢谢! 回复于: 2013-01-21 15:31:31 将子窗口的函数定义为类函数calss function a(const s: string): Boolean; 有两种解决办法,一种就是上楼说的,定义成class function静态方法,第二种就是普通的方法:D

子窗体和父窗体双向传值——C#窗体传值方法总结

简介 在很多场景下,我们的程序需要完成窗体间的传值功能,有时候是父窗体→子窗体单向传值.子窗体→父窗体传值甚至是,也有时候我们需要父窗体?子窗体双向传值. 在本文中主要介绍一些能够实现双向传值的方法,能够双向传值的方法也能够实现单向传值. 本文的所有源码都可以在GitHub上下载. 本文介绍的方法仅限于我自己知道并且实现过的,我相信还有很多我并不知道的方法,因此也许在很多朋友眼中本文的内容是浅显甚至可笑的,希望路过的各方朋友不吝赐教,我也希望不断地进步! 方法1:Public字段+ShowDia

Winform 子窗体设置刷新父窗体

方法1:所有权法 父窗体:Form1    子窗体:Form2 //Form1:窗体代码 //需要有一个公共的刷新方法 public void Refresh_Method() { //... } //在调用Form2时,要把Form2的所有者设为Form1 Form2 f2 = new Form2() ; f2.Owner = this; f2.ShowDialog() ; //Form2:窗体代码 //在需要对其调用者(父)刷新时 Form1 f1 ; f1 = (Form1)this.Ow