首页编程initializecomponent C# 怎样执行 InitializeComponent() 下面的函数

initializecomponent C# 怎样执行 InitializeComponent() 下面的函数

编程之家2023-11-0671次浏览

你是否曾想过,initializecomponent和C# 怎样执行 InitializeComponent() 下面的函数之间是否存在联系?在本文中,小编将为您探索它们之间的关系,带您领略新的视角和见解。

initializecomponent C# 怎样执行 InitializeComponent() 下面的函数

c# 调用控件出现t.InvalidActiveXStateException

用户控件里,直接调用即可,参考如下:

usercontrol.ascx.cs中的处理:

1.定义public的事件委托,如clickeventhandler;

2.在usercontrol类中声明事件,如click;

3.在usercontrol类中定义引发事件的方法,如onclick()方法;

4.在usercontrol类的相关方法中调用引发事件的方法,如在button_click()中调用onclick()。

initializecomponent C# 怎样执行 InitializeComponent() 下面的函数

包含usercontrol的页面cs文件中的处理:

1. initializecomponent()中增加事件处理程序,采用findcontrol方法找到usercontrol;

2.定义事件处理方法,在该方法中处理usercontrol的事件,如usercontrol_clicked()。

c#中代码写在initializecomponent前面和后面有区别吗

您好,

这肯定是有区别的,InitializeComponent方法是用来初始化窗体组件的,在InitializeComponent之前,窗体的各个控件还没有进行初始化,比如说窗体上有一个TextBoxUserName,在InitializeComponent之前它还只是一个TextBox类型的变量而已,如果您在InitializeComponent之前调用这个TextBox的属性或方法,就会出错。

您可以看一下Form.Designer.cs,在那里找到InitializeComponent方法,您会发现窗体对象的初始化都是在那里做的。

initializecomponent C# 怎样执行 InitializeComponent() 下面的函数

C# 怎样执行 InitializeComponent() 下面的函数

在每一个窗体生成的时候,都会针对于当前的窗体定义InitializeComponent()方法,该方法实际上是由系统生成的对于窗体界面的定义方法。

//位于.cs文件之中的InitializeComponent()方法

public Form011()

{

InitializeComponent();

}

每一个Form文件建立后,都会同时产生程序代码文件.CS文件,以及与之相匹配的.Designer.CS文件,业务逻辑以及事件方法等被编写在.CS

文件之中,而界面设计规则被封装在.Designer.CS文件里,下面代码为.Designer.CS文件的系统自动生成的脚本代码。

namespace Example_FormTest

{

partial class frmStudent

{

///<summary>

///必需的设计器变量。

///</summary>

private System.ComponentModel.IContainer components= null;

///<summary>

///清理所有正在使用的资源。

///</summary>

///<param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>

protected override void Dispose(bool disposing)

{

if(disposing&&(components!= null))

{

components.Dispose();

}

base.Dispose(disposing);

}

#region Windows窗体设计器生成的代码

///<summary>

///设计器支持所需的方法-不要

///使用代码编辑器修改此方法的内容。

///</summary>

private void InitializeComponent()

{

this.SuspendLayout();

//

// frmStudent

//

this.AutoScaleDimensions= new System.Drawing.SizeF(6F, 12F);

this.AutoScaleMode= System.Windows.Forms.AutoScaleMode.Font;

this.ClientSize= new System.Drawing.Size(292, 273);

this.Name="frmStudent";

this.Text="学生信息";

this.MouseClick+= new System.Windows.Forms.MouseEventHandler(this.frmStudent_MouseClick);

this.KeyPress+= new System.Windows.Forms.KeyPressEventHandler(this.frmStudent_KeyPress);

this.ResumeLayout(false);

}

#endregion

}

}

在代码之中,可以很容易发现InitializeComponent()方法和Dispose()方法,前者为界面设计的变现内容,后者为表单释放系统资源时候执行编码。

InitializeComponent()方法反映了窗体设计器中窗体和控件的属性。通常不会在世界上个文件中修改代码。如果更改InitializeComponent()方法中的相关属性参数,在窗体设计器界面上也会显示出来。

我们发现建一个c#窗体项目,在Form1.cs和Form1.Designer.cs里分别有一个InitializeComponent()函数

Form1.Designer.cs里的是定义(函数名后面有大括号包含定义内容)

Form1.cs里的是调用(函数名后面分号结尾)

partial表示以下创建的是分布类代码

也就是说一个类的定义代码可以写在两个不同的页面

Form1.cs和Form1.Designer.cs

注意:InitializeComponent()方法写在前面和后面是有区别的。InitializeComponent()方法是用来初始化窗体组件

的,在InitializeComponent之前,窗体的各个控件还没有进行初始化,比如说窗体上有一个TextBoxUserName,在

InitializeComponent之前它还只是一个TextBox类型的变量而已,如果在InitializeComponent之前调用这个

TextBox的属性或方法,就会出错。再比如说你拖上取一个TextBox,它放在Form的位置,TextBox的一些属性。包括new

这个TextBox都放在那个函数里面处理的。

可以看一下Form.Designer.cs,在那里找到InitializeComponent方法,会发现窗体对象的初始化都是在那里做的。

c# MainWindow() 与MainWindow_Loaded()区别

简单来说:先调用构造函数MainWindow(),在窗体加载时才会引发MainWindow_Loaded()事件

WinForm中的 Form_Load函数和他的构造函数 public Form()有区别:

(1): public Form():程序入口,它的InitializeComponent()

做了许多初始化的工作,所以Load才能成为一个事件,InitializeComponent为你的程序作了必要的初始化工作

(2) Form_Load:装载窗口事件,是窗体启动时触发的事件

总的来讲:

程序先执行InitializeComponent();后执行Form1_Load,InitializeComponent是进行一系列的初始化,Form1_Load是在窗体装载时发生的一个事件。一般写程序你把自己要初始化的东东可以放在Form1_Load中,当然也可以在InitializeComponent中,那就要重载InitializeComponent了。

public Form是类的构造函数,负责对类成员进行初始化工作。比如所有控件的创建、指定大小、位置等等。习惯上构造函数会调用InitializeComponent来实现窗体的初始化工作(初始化为设计模式中指定的状态)。

Form_Load是类的自定义方法,用来响应form的Load事件,该事件在窗体初始化完毕(包括所有控件初始化完毕),并且尚未显示的时候触发

Form()是窗体类的构造方法,有来初始化类的字段属性(其中包括它拥有控件类),和其他构造方法一样他是一个窗体实例产生时最先执行的

Form_Load窗体加载方法,用来图形界面,这时候可以设置一些窗体属性,当然在构造函数里也可以

initializecomponent和C# 怎样执行 InitializeComponent() 下面的函数的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!

杭州手机软件开发(杭州有哪些比较好的软件开发公司)苏州软件开发公司?请问苏州有什么软件公司 请详细列出