C#深入浅出全接触(四)

北京十一月

北京十一月

2016-02-19 12:12

今天给大家分享的是由图老师小编精心为您推荐的C#深入浅出全接触(四),喜欢的朋友可以分享一下,也算是给小编一份支持,大家都不容易啊!

2、用Visual C# 创建Windows应用程序

在Visual C#创建一个Windows (GUI) 应用程序要以前版本的VC++ 容易得多。下面将介绍用Visual C#工程文件向导创建Windows应用程序的过程。

创建应用程序框架

在VS .NET IDE中选择新建-工程文件-Visual C# 工程文件-Windows 应用程序:

然后点击 OK,出现一个表单设计视图(这与VB或Delphi相同)。在右侧我们看到了一个解决方案导航器( Solution Explorer)。向导为新表单增加了一个Form1.cs 文件,其中包括了这个表单及其所有子窗口的的代码:

双击 Form1.cs就能看到这个代码:

namespace mcWinFormsApp

{

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.WinForms;

using System.Data;

/// summary

/// Summary description for Form1.

/// /summary

public class Form1 : System.WinForms.Form

{

/// summary

/// Required designer variable.

/// /summary

private System.ComponentModel.Container components;

public Form1()

{

//

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

// Required for Windows Form Designer support

//

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

InitializeComponent();

//

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

// TODO: Add any constructor code after InitializeComponent call

//

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

/// summary

/// Clean up any resources being used.

/// /summary

public override void Dispose()

{

base.Dispose();

components.Dispose();

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

/// summary

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

/// /summary

private void InitializeComponent()

{

this.components = new System.ComponentModel.Container ();

//@this.TrayHeight = 0;

//@this.TrayLargeIcon = false;

//@this.TrayAutoArrange = true;

this.Text = "Form1";

this.AutoScaleBaseSize = new System.Drawing.Size (5, 13);

this.Click += new System.EventHandler (this.Form1_Click);

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

protected void Form1_Click (object sender, System.EventArgs e)

{

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

/// summary

/// The main entry point for the application.

/// /summary

public static void Main(string[] args)

{

Application.Run(new Form1());

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

从以上代码中,我们看到:向导增加了一个默认的名称空间以及对WinForms 所要求的不同名称空间的引用;Form1 类是从System.WinForms.Form中派生出来的;InitializeComponent方法负责初始化(创建)表单及其控件(当在表单中托放下一些控件时,可以看到它的更多细节);Dispose方法负责清除所有不再使用的资源。

添加控件

要向一个表单中添加控件或者子窗口,需要打开 工具箱ToolBox。这个工具箱的概念来自VB。点击菜单视图-工具箱,激活工具箱功能:

ToolBox(工具箱)窗口的样子如下图所示。现在就可以添加控件了,添加方法与Visual Studio的以前版本一样,拖放或者双击控件都可以。

首先在表单上托放下一个按钮和一个编辑框,然后让我们看看系统向初始组件(InitializeComponent)中增加了什么东西。

接着在属性窗口中设置控件的属性,这与VB中的操作方式一样。在控件上点击右键,并点中属性菜单条就可以调出属性窗口。

现在看看InitializeComponent方法,就会发现这些代码已经增加到其中了。接着手工修改一下这些代码:

this.components = new System.ComponentModel.Container ();

this.button1 = new System.WinForms.Button ();

this.textBox1 = new System.WinForms.TextBox ();

//@this.TrayHeight = 0;

//@this.TrayLargeIcon = false;

//@this.TrayAutoArrange = true;

button1.Location = new System.Drawing.Point (16, 24);

button1.Size = new System.Drawing.Size (88, 32);

button1.TabIndex = 0;

button1.Text = "Browse";

button1.Click += new System.EventHandler (this.button1_Click);

textBox1.Location = new System.Drawing.Point (128, 32);

textBox1.Text = "textBox1";

textBox1.TabIndex = 1;

textBox1.Size = new System.Drawing.Size (144, 20);

this.Text = "Form1";

this.AutoScaleBaseSize = new System.Drawing.Size (5, 13);

this.Click += new System.EventHandler (this.Form1_Click);

this.Controls.Add (this.textBox1);

this.Controls.Add (this.button1);

添加事件处理器

最后,要为按钮增加一个事件处理器,实现浏览文件的目的。在按钮上双击,打开Button1_Click事件处理器。同理,使用同样的方法可以为任何控件编写事件处理器。

protected void button1_Click (object sender, System.EventArgs e)

{

OpenFileDialog fdlg = new OpenFileDialog();

fdlg.Title = "C# Corner Open File Dialog" ;

fdlg.InitialDirectory = @"c:" ;

fdlg.Filter = "All files (*.*)|*.*|All files (*.*)|*.*" ;

fdlg.FilterIndex = 2 ;

fdlg.RestoreDirectory = true ;

if(fdlg.ShowDialog() == DialogResult.OK)

{

textBox1.Text = fdlg.FileName ;

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

到此就完成了所有步骤,剩下的就是运行这个程序。它实现了浏览一个文件,然后将选择的文件名装进文本框的功能。请下载相关代码:winFormApp.zip 。

展开更多 50%)
分享

猜你喜欢

C#深入浅出全接触(四)

编程语言 网络编程
C#深入浅出全接触(四)

C#深入浅出全接触(一)

编程语言 网络编程
C#深入浅出全接触(一)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

C#深入浅出全接触(二)

编程语言 网络编程
C#深入浅出全接触(二)

C#深入浅出全接触(五)

编程语言 网络编程
C#深入浅出全接触(五)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

C#深入浅出全接触(三)

编程语言 网络编程
C#深入浅出全接触(三)

深入浅出 CPropertySheet

C语言教程 C语言函数
深入浅出 CPropertySheet

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Beginner with c# 7

Beginner with c# 7

ftp类(myftp.php)

ftp类(myftp.php)
下拉加载更多内容 ↓