精华内容
下载资源
问答
  • C# WinForm 教程

    2009-05-29 11:50:21
    C# WinForm 教程
  • C# Winform教程

    2017-06-03 09:58:36
    非常经典的微软.net入门系列,由张晨光老师主编,简单易学,通俗易懂,特别值得一看。
  • C#基础教程 winform教程

    2010-06-05 22:43:27
    c# 基础教程winform 教程c# 基础教程winform 教程c# 基础教程winform 教程c# 基础教程winform 教程
  • C# WinForm界面设计教程

    2021-06-24 13:47:23
    WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用 C# 编程。...这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件

    WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用 C# 编程。C# WinForm 编程需要创建「Windows窗体应用程序」项目。

    .NET 提供了大量 Windows 风格的控件和事件,我们可以直接拿来使用,上手简单,开发快速。

    Windows 窗体应用程序是 C# 语言中的一个重要应用,也是 C# 语言最常见的应用。这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件,开发出一个实用的客户端。

    对于每一个使用过 Windows 操作系统的读者来说,Windows 应用程序是不会陌生的。使用 C# 语言编写的 Windows 应用程序与 Windows 操作系统的界面类似,每个界面都是由窗体构成的,并且能通过鼠标单击、键盘输入等操作完成相应的功能。

    C#创建Windows窗体应用程序(WinForm程序)

    在每一个 Windows 窗体应用程序的项目文件夹中,都会有一个默认的窗体程序 Form1.cs,并且在项目的 Program.cs 文件中指定要运行的窗体。

    Program.cs 文件的代码如下。

    图片

    在上述代码的 Main 方法中的:

    • 第 1 行代码:用于启动应用程序中可视的样式,如果控件和操作系统支持,那么 控件的绘制就能根据显不风格来实现。

    • 第 2 行代码:控件支持 UseCompatibleTextRenderingproperty 属性,该方法将此属 性设置为默认值。

    • 第 3 行代码:用于设置在当前项目中要启动的窗体,这里 new Form1() 即为要启动的窗体。

    Windows 窗体应用程序也称为事件驱动程序,也就是通过鼠标单击界面上的控件、通过键盘输入操作控件等操作来触发控件的不同事件完成相应的操作。

    例如单击按钮、右击界面、向文本框中输入内容等操作。

    C#设置窗体属性

    每一个 Windows 窗体应用程序都是由若干个窗体构成的,窗体中的属性主要用于设置窗体的外观。

    窗体的常用属性如下表所示。

    图片

    【实例】创建一个名为 TestForm 的窗体,并完成如下设置。
    • 窗体的标题栏中显示“第一个窗体”。
    • 窗体中起始位置居中。
    • 窗体中设置一个背景图片。
    • 窗体中不显示最大化和最小化按钮。

    实现题目中要求的窗体,具体步骤如下。

    1) 创建名为 TestForm 的窗体

    创建一个 Windows 应用程序 Windows-2,然后右击该项目,在弹出的右键菜单中选择“添加新项”命令,弹出如下图所示。
     

    图片

    2) 设置 TestForm 窗体的属性

    TestForm 窗体的属性设置如下表所示。

    图片

    在上述属性中除了背景图片 (Backgroundimage) 属性以外,其他属性直接添加上表中对应的属性值即可。

    设置背景图片属性 (Backgroimdlmage) 的方法是单击 Backgroundimage 属性后的按钮,在弹出的对话框中单击“导入”按钮。

    如下图所示, 选择图片 window_2.jpg 所在的路径,单击“确定”按钮即可完成背景图片属性的设置。
     

    图片

    3) 设置 TestForm 窗体为启动窗体

    每一个 Windows 窗体应用程序在运行时仅能指定一个启动窗体,设置启动窗体的方式是在项目的 Program.cs 文件中指定。具体的代码如下。

    图片

    完成以上 3 步后按 F5 键运行程序,效果如下图所示。
     

    图片

    展开全文
  • c# winform 多线程 教程

    2010-07-21 13:53:37
    c# winform 多线程 教程c# winform 多线程 教程c# winform 多线程 教程
  • C# WinForm实践开发教程

    2018-09-10 16:16:14
    C# WinForm实践开发教程
  • C# WinForm 实践开发教程,加源码,非常适合初学者,自己以及看过了
  • C# WinForm 实践开发教程,很详细的一本书,想学习C# WinForm开发的必备书籍
  • C#WinForm 分屏教程合集

    2020-08-01 08:19:55
  • C# WinForm实践开发教程》附源码,C# WinForm实践开发教程》附源码
  • c#.net winForm教程

    2012-08-04 18:24:32
    c#.net winForm教程
  • WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用 C# 编程。...这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件,开

    WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用 C# 编程。C# WinForm 编程需要创建「Windows窗体应用程序」项目。

    .NET 提供了大量 Windows 风格的控件和事件,我们可以直接拿来使用,上手简单,开发快速。

    Windows 窗体应用程序是 C# 语言中的一个重要应用,也是 C# 语言最常见的应用。这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件,开发出一个实用的客户端。

    对于每一个使用过 Windows 操作系统的读者来说,Windows 应用程序是不会陌生的。使用 C# 语言编写的 Windows 应用程序与 Windows 操作系统的界面类似,每个界面都是由窗体构成的,并且能通过鼠标单击、键盘输入等操作完成相应的功能。

    C#创建Windows窗体应用程序(WinForm程序)

    C#创建Windows窗体应用程序(WinForm程序)

    在每一个 Windows 窗体应用程序的项目文件夹中,都会有一个默认的窗体程序 Form1.cs,并且在项目的 Program.cs 文件中指定要运行的窗体。

    Program.cs 文件的代码如下。

    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
    
    

    在上述代码的 Main 方法中的:
    • 第 1 行代码:用于启动应用程序中可视的样式,如果控件和操作系统支持,那么 控件的绘制就能根据显不风格来实现。
    • 第 2 行代码:控件支持 UseCompatibleTextRenderingproperty 属性,该方法将此属 性设置为默认值。
    • 第 3 行代码:用于设置在当前项目中要启动的窗体,这里 new Form1() 即为要启动的窗体。

    Windows 窗体应用程序也称为事件驱动程序,也就是通过鼠标单击界面上的控件、通过键盘输入操作控件等操作来触发控件的不同事件完成相应的操作。

    例如单击按钮、右击界面、向文本框中输入内容等操作。

    C#设置窗体属性

    C#设置窗体属性

    每一个 Windows 窗体应用程序都是由若干个窗体构成的,窗体中的属性主要用于设置窗体的外观。
    窗体的常用属性如下表所示。

    属性作用
    Name用来获取或设置窗体的名称
    WindowState获取或设置窗体的窗口状态,取值有3种,即Normal(正常)、Minimized(最小化)、Maximized(最大化),默认为 Normal,即正常显示
    StartPosition获取或设置窗体运行时的起始位置,取值有 5 种,即 Manual(窗体位置由 Location 属性决定)、CenterScreen(屏幕居中)、WindowsDefaultLocation( Windows 默认位置)、WindowsDefaultBounds(Windows 默认位置,边界由 Windows 决定)、CenterParent(在父窗体中居中),默认为 WindowsDefaultLocation
    Text获取或设置窗口标题栏中的文字
    MaximizeBox获取或设置窗体标题栏右上角是否有最大化按钮,默认为 True
    MinimizeBox获取或设置窗体标题栏右上角是否有最小化按钮,默认为 True
    BackColor获取或设置窗体的背景色
    BackgroundImage获取或设置窗体的背景图像
    BackgroundImageLayout获取或设置图像布局,取值有 5 种,即 None(图片居左显示)、Tile(图像重复,默认值)、Stretch(拉伸)、Center(居中)、Zoom(按比例放大到合适大小)
    Enabled获取或设置窗体是否可用
    Font获取或设置窗体上文字的字体
    ForeColor获取或设置窗体上文字的颜色
    Icon获取或设置窗体上显示的图标

    【实例】创建一个名为 TestForm 的窗体,并完成如下设置。
    • 窗体的标题栏中显示“第一个窗体”。
    • 窗体中起始位置居中。
    • 窗体中设置一个背景图片。
    • 窗体中不显示最大化和最小化按钮。

    详细步骤查看原文

    展开全文
  • c#winform实践开发教程

    2014-07-19 19:00:08
    这是关于c#winform的实践开发教程
  • C# WinForm 实例

    2021-07-24 12:31:06
    WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用 C# 编程。...这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件,开

    WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户端(PC软件)开发技术,一般使用 C# 编程。C# WinForm 编程需要创建「Windows窗体应用程序」项目。

    .NET 提供了大量 Windows 风格的控件和事件,我们可以直接拿来使用,上手简单,开发快速。

    Windows 窗体应用程序是 C# 语言中的一个重要应用,也是 C# 语言最常见的应用。这套 C# WinForm 教程将教会大家如何使用 WinForm 进行界面设计,并绑定对应的事件,开发出一个实用的客户端。

    对于每一个使用过 Windows 操作系统的读者来说,Windows 应用程序是不会陌生的。使用 C# 语言编写的 Windows 应用程序与 Windows 操作系统的界面类似,每个界面都是由窗体构成的,并且能通过鼠标单击、键盘输入等操作完成相应的功能。

    1.C#创建Windows窗体应用程序(WinForm程序)

    在每一个 Windows 窗体应用程序的项目文件夹中,都会有一个默认的窗体程序 Form1.cs,并且在项目的 Program.cs 文件中指定要运行的窗体。

    Program.cs 文件的代码如下。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace WindowsFormsApp1
    {
        static class Program
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            }
        }
    }
    
    

    在上述代码的 Main 方法中的:

    • • 第 1 行代码:用于启动应用程序中可视的样式,如果控件和操作系统支持,那么 控件的绘制就能根据显不风格来实现。
    • • 第 2 行代码:控件支持 UseCompatibleTextRenderingproperty 属性,该方法将此属 性设置为默认值。
    • • 第 3 行代码:用于设置在当前项目中要启动的窗体,这里 new Form1() 即为要启动的窗体。

    每一个 Windows 窗体应用程序都是由若干个窗体构成的,窗体中的属性主要用于设置窗体的外观。
    窗体的常用属性如下表所示。

    属性作用
    Name用来获取或设置窗体的名称
    WindowState获取或设置窗体的窗口状态,取值有3种,即Normal(正常)、Minimized(最小化)、Maximized(最大化),默认为 Normal,即正常显示
    StartPosition获取或设置窗体运行时的起始位置,取值有 5 种,即 Manual(窗体位置由 Location 属性决定)、CenterScreen(屏幕居中)、WindowsDefaultLocation( Windows 默认位置)、WindowsDefaultBounds(Windows 默认位置,边界由 Windows 决定)、CenterParent(在父窗体中居中),默认为 WindowsDefaultLocation
    Text获取或设置窗口标题栏中的文字
    MaximizeBox获取或设置窗体标题栏右上角是否有最大化按钮,默认为 True
    MinimizeBox获取或设置窗体标题栏右上角是否有最小化按钮,默认为 True
    BackColor获取或设置窗体的背景色
    BackgroundImage获取或设置窗体的背景图像
    BackgroundImageLayout获取或设置图像布局,取值有 5 种,即 None(图片居左显示)、Tile(图像重复,默认值)、Stretch(拉伸)、Center(居中)、Zoom(按比例放大到合适大小)
    Enabled获取或设置窗体是否可用
    Font获取或设置窗体上文字的字体
    ForeColor获取或设置窗体上文字的颜色
    Icon获取或设置窗体上显示的图标

    1.左下角显示鼠标位置

    using System;
    using System.Drawing;
    using System.Collections;
    using System.ComponentModel;
    using System.Windows.Forms;
    using System.Data;
    
    namespace statusApp
    {
    	/// Summary description for Form1.
    	public class Form1 : System.Windows.Forms.Form
    	{
            private System.Windows.Forms.StatusBar statusBar1;
    		/// Required designer variable.
    		private System.ComponentModel.Container components = null;
    		public Form1()
    		{
    			InitializeComponent();
    		}
    		/// Clean up any resources being used.
    		protected override void Dispose( bool disposing )
    		{
    			if( disposing )
    			{
    				if (components != null) 
    				{
    					components.Dispose();
    				}
    			}
    			base.Dispose( disposing );
    		}
    		/// <summary>
    		/// Required method for Designer support - do not modify
    		/// the contents of this method with the code editor.
    		/// </summary>
    		private void InitializeComponent()
    		{
                this.statusBar1 = new System.Windows.Forms.StatusBar();
                this.SuspendLayout();
                // statusBar1
                this.statusBar1.Location = new System.Drawing.Point(0, 256);
                this.statusBar1.Name = "statusBar1";
                this.statusBar1.Size = new System.Drawing.Size(292, 17);
                this.statusBar1.TabIndex = 0;
                this.statusBar1.Text = "状态栏初始信息";
                // Form1
                this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
                this.ClientSize = new System.Drawing.Size(292, 273);
                this.Controls.Add(this.statusBar1);
                this.Name = "Form1";
                this.Text = "使用状态栏";
                this.Load += new System.EventHandler(this.Form1_Load);
                this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseMove);
                this.ResumeLayout(false);
            }
    		/// The main entry point for the application.
    		[STAThread]
    		static void Main() 
    		{
    			Application.Run(new Form1());
    		}
            private void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
            {
                string prompt = "鼠标位置(" + e.X.ToString() + "," + e.Y.ToString() + ")";
                statusBar1.Text = prompt;
            }
            private void Form1_Load(object sender, EventArgs e)
            {
            }
        }
    }
    
    

    执行结果:
    请添加图片描述

    2.菜单简单使用

    using System;
    using System.Drawing;
    using System.Collections;
    using System.ComponentModel;
    using System.Windows.Forms;
    using System.Data;
    
    namespace menuApp
    {
    	/// <summary>
    	/// Summary description for Form1.
    	/// </summary>
    	public class Form1 : System.Windows.Forms.Form
    	{
            private System.Windows.Forms.MainMenu mainMenu1;
            private System.Windows.Forms.MenuItem File;
            private System.Windows.Forms.MenuItem FileExit;
            private System.Windows.Forms.MenuItem View;
            private System.Windows.Forms.MenuItem ViewRed;
            private System.Windows.Forms.MenuItem ViewYellow;
            private System.Windows.Forms.MenuItem ViewBlue;
            private System.Windows.Forms.MenuItem Help;
            private System.Windows.Forms.MenuItem HelpAbout;
    		/// <summary>
    		/// Required designer variable.
    		/// </summary>
    		private System.ComponentModel.Container components = null;
    
    		public Form1()
    		{
    			//
    			// Required for Windows Form Designer support
    			//
    			InitializeComponent();
    
    			//
    			// TODO: Add any constructor code after InitializeComponent call
    			//
    		}
    
    		/// <summary>
    		/// Clean up any resources being used.
    		/// </summary>
    		protected override void Dispose( bool disposing )
    		{
    			if( disposing )
    			{
    				if (components != null) 
    				{
    					components.Dispose();
    				}
    			}
    			base.Dispose( disposing );
    		}
    
    		
    		/// <summary>
    		/// Required method for Designer support - do not modify
    		/// the contents of this method with the code editor.
    		/// </summary>
    		private void InitializeComponent()
    		{
                this.mainMenu1 = new System.Windows.Forms.MainMenu();
                this.File = new System.Windows.Forms.MenuItem();
                this.FileExit = new System.Windows.Forms.MenuItem();
                this.View = new System.Windows.Forms.MenuItem();
                this.ViewRed = new System.Windows.Forms.MenuItem();
                this.ViewYellow = new System.Windows.Forms.MenuItem();
                this.ViewBlue = new System.Windows.Forms.MenuItem();
                this.Help = new System.Windows.Forms.MenuItem();
                this.HelpAbout = new System.Windows.Forms.MenuItem();
                // 
                // mainMenu1
                // 
                this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                                                                                          this.File,
                                                                                          this.View,
                                                                                          this.Help});
                // 
                // File
                // 
                this.File.Index = 0;
                this.File.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                                                                                     this.FileExit});
                this.File.Text = "文件(&F)";
                // 
                // FileExit
                // 
                this.FileExit.Index = 0;
                this.FileExit.Text = "退出(&E)";
                this.FileExit.Click += new System.EventHandler(this.FileExit_Click);
                // 
                // View
                // 
                this.View.Index = 1;
                this.View.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                                                                                     this.ViewRed,
                                                                                     this.ViewYellow,
                                                                                     this.ViewBlue});
                this.View.Text = "视图(&V)";
                // 
                // ViewRed
                // 
                this.ViewRed.Index = 0;
                this.ViewRed.Text = "红色(&R)";
                this.ViewRed.Click += new System.EventHandler(this.ViewRed_Click);
                // 
                // ViewYellow
                // 
                this.ViewYellow.Index = 1;
                this.ViewYellow.Text = "黄色(&Y)";
                this.ViewYellow.Click += new System.EventHandler(this.ViewYellow_Click);
                // 
                // ViewBlue
                // 
                this.ViewBlue.Index = 2;
                this.ViewBlue.Text = "蓝色(&B)";
                this.ViewBlue.Click += new System.EventHandler(this.ViewBlue_Click);
                // 
                // Help
                // 
                this.Help.Index = 2;
                this.Help.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                                                                                     this.HelpAbout});
                this.Help.Text = "帮助(&H)";
                // 
                // HelpAbout
                // 
                this.HelpAbout.Index = 0;
                this.HelpAbout.Text = "关于...";
                this.HelpAbout.Click += new System.EventHandler(this.HelpAbout_Click);
                // 
                // Form1
                // 
                this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
                this.ClientSize = new System.Drawing.Size(292, 273);
                this.Menu = this.mainMenu1;
                this.Name = "Form1";
                this.Text = "使用菜单";
    
            }
    		
    
    		/// <summary>
    		/// The main entry point for the application.
    		/// </summary>
    		[STAThread]
    		static void Main() 
    		{
    			Application.Run(new Form1());
    		}
    
            private void FileExit_Click(object sender, System.EventArgs e)
            {
                this.Close();
            }
    
            private void ViewRed_Click(object sender, System.EventArgs e)
            {
                this.BackColor = Color.Red;
            }
    
            private void ViewYellow_Click(object sender, System.EventArgs e)
            {
                this.BackColor = Color.Yellow;
            }
    
            private void ViewBlue_Click(object sender, System.EventArgs e)
            {
                this.BackColor = Color.Blue;
            }
    
            private void HelpAbout_Click(object sender, System.EventArgs e)
            {
    
            }
    	}
    }
    
    

    执行结果:
    请添加图片描述

    3.多窗口

    using System;
    using System.Drawing;
    using System.Collections;
    using System.ComponentModel;
    using System.Windows.Forms;
    using System.Data;
    
    namespace MDIFormApp
    {
    	/// <summary>
    	/// Summary description for Form1.
    	/// </summary>
    	public class Form1 : System.Windows.Forms.Form
    	{
            private static int FormCount=0;
    
            private System.Windows.Forms.MainMenu mainMenu1;
            private System.Windows.Forms.MenuItem menuItem4;
            private System.Windows.Forms.MenuItem File;
            private System.Windows.Forms.MenuItem FileNew;
            private System.Windows.Forms.MenuItem FileExit;
            private System.Windows.Forms.MenuItem Window;
            private System.Windows.Forms.MenuItem WindowCascade;
            private System.Windows.Forms.MenuItem WindowHorizontal;
            private System.Windows.Forms.MenuItem WindowVertical;
            private IContainer components;
    
    		public Form1()
    		{
    			//
    			// Required for Windows Form Designer support
    			//
    			InitializeComponent();
    
    			//
    			// TODO: Add any constructor code after InitializeComponent call
    			//
    		}
    
    		/// <summary>
    		/// Clean up any resources being used.
    		/// </summary>
    		protected override void Dispose( bool disposing )
    		{
    			if( disposing )
    			{
    				if (components != null) 
    				{
    					components.Dispose();
    				}
    			}
    			base.Dispose( disposing );
    		}
    
    		#region Windows Form Designer generated code
    		/// <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.mainMenu1 = new System.Windows.Forms.MainMenu(this.components);
                this.File = new System.Windows.Forms.MenuItem();
                this.FileNew = new System.Windows.Forms.MenuItem();
                this.menuItem4 = new System.Windows.Forms.MenuItem();
                this.FileExit = new System.Windows.Forms.MenuItem();
                this.Window = new System.Windows.Forms.MenuItem();
                this.WindowCascade = new System.Windows.Forms.MenuItem();
                this.WindowHorizontal = new System.Windows.Forms.MenuItem();
                this.WindowVertical = new System.Windows.Forms.MenuItem();
                this.SuspendLayout();
                // 
                // mainMenu1
                // 
                this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                this.File,
                this.Window});
                // 
                // File
                // 
                this.File.Index = 0;
                this.File.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                this.FileNew,
                this.menuItem4,
                this.FileExit});
                this.File.Text = "文件(&F)";
                // 
                // FileNew
                // 
                this.FileNew.Index = 0;
                this.FileNew.Text = "新建(&N)";
                this.FileNew.Click += new System.EventHandler(this.FileNew_Click);
                // 
                // menuItem4
                // 
                this.menuItem4.Index = 1;
                this.menuItem4.Text = "-";
                // 
                // FileExit
                // 
                this.FileExit.Index = 2;
                this.FileExit.Text = "退出(&E)";
                this.FileExit.Click += new System.EventHandler(this.FileExit_Click);
                // 
                // Window
                // 
                this.Window.Index = 1;
                this.Window.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
                this.WindowCascade,
                this.WindowHorizontal,
                this.WindowVertical});
                this.Window.Text = "窗口(&W)";
                // 
                // WindowCascade
                // 
                this.WindowCascade.Index = 0;
                this.WindowCascade.Text = "层叠(&C)";
                this.WindowCascade.Click += new System.EventHandler(this.WindowCascade_Click);
                // 
                // WindowHorizontal
                // 
                this.WindowHorizontal.Index = 1;
                this.WindowHorizontal.Text = "水平排列(&H)";
                this.WindowHorizontal.Click += new System.EventHandler(this.WindowHorizontal_Click);
                // 
                // WindowVertical
                // 
                this.WindowVertical.Index = 2;
                this.WindowVertical.Text = "竖直排列(&V)";
                this.WindowVertical.Click += new System.EventHandler(this.WindowVertical_Click);
                // 
                // Form1
                // 
                this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
                this.ClientSize = new System.Drawing.Size(416, 273);
                this.IsMdiContainer = true;
                this.Menu = this.mainMenu1;
                this.Name = "Form1";
                this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
                this.Text = "多窗口应用程序";
                this.Load += new System.EventHandler(this.Form1_Load);
                this.ResumeLayout(false);
    
            }
    		#endregion
    
    		/// <summary>
    		/// The main entry point for the application.
    		/// </summary>
    		[STAThread]
    		static void Main() 
    		{
    			Application.Run(new Form1());
    		}
    
            private void FileNew_Click(object sender, System.EventArgs e)
            {
                Form frmTemp=new Form();
                frmTemp.MdiParent=this;
                frmTemp.Text="Window#" + FormCount.ToString();
                FormCount++;
                frmTemp.Show();
            }
    
            private void FileExit_Click(object sender, System.EventArgs e)
            {
                this.Close();
            }
    
            private void WindowCascade_Click(object sender, System.EventArgs e)
            {
                this.LayoutMdi(MdiLayout.Cascade);
            }
    
            private void WindowHorizontal_Click(object sender, System.EventArgs e)
            {
                this.LayoutMdi(MdiLayout.TileHorizontal);
            }
    
            private void WindowVertical_Click(object sender, System.EventArgs e)
            {
                this.LayoutMdi(MdiLayout.TileVertical);
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
    
            }
        }
    }
    
    

    请添加图片描述

    4.简单服务器客户端-字符串传输

    client.cs

    using System;
    using System.IO;
    using System.Net;
    using System.Text;
    using System.Net.Sockets;
    
    public class client 
    {
        public static void Main() 
        {
            try 
            {
                // 新建客户端套接字
    			TcpClient tcpclnt = new TcpClient();
    			Console.WriteLine("连接.....");
    			
                // 连接服务器
    			tcpclnt.Connect("127.0.0.1",8001);
    			Console.WriteLine("已连接");
    			Console.Write("请输入要传输的字符串 : ");
    			
                // 读入字符串
    			String str=Console.ReadLine();
    
                // 得到客户端的流
    			Stream stm = tcpclnt.GetStream();
    			
                // 发送字符串
    			ASCIIEncoding asen= new ASCIIEncoding();
    			byte[] ba=asen.GetBytes(str);
    			Console.WriteLine("传输中.....");			
    			stm.Write(ba,0,ba.Length);
    			
                // 接收从服务器返回的信息
    			byte[] bb=new byte[100];
    			int k=stm.Read(bb,0,100);
    			
                // 输出服务器返回信息
                for (int i=0;i<k;i++)
                {
                    Console.Write(Convert.ToChar(bb[i]));
                }
    			
                // 关闭客户端连接
    			tcpclnt.Close();
    		}		
    		catch (Exception e) 
            {
    			Console.WriteLine("Error..... " + e.StackTrace);
    		}
    	}
    }
    

    server.cs

    using System;
    using System.Text;
    using System.Net;
    using System.Net.Sockets;
    
    public class server
    {
        public static void Main() 
        {
            try 
            {
                // 把IP地址转换为IPAddress的实例
                IPAddress ipAd = IPAddress.Parse("127.0.0.1");
                
                // 初始化监听器, 端口为8001
                TcpListener myList=new TcpListener(ipAd,8001);
                
                // 开始监听服务器端口
                myList.Start();
    
                // 输出服务器启动信息
                Console.WriteLine("在8001端口启动服务...");	
                Console.WriteLine("本地节点为:" + myList.LocalEndpoint );
                Console.WriteLine("等待连接.....");
                
                // 等待处理接入连接请求
                // 新建立的连接用套接字s表示
                Socket s=myList.AcceptSocket();
                Console.WriteLine("连接来自 "+s.RemoteEndPoint);
                
                // 接收客户端信息
                byte[] b=new byte[100];
                int k=s.Receive(b);
                Console.WriteLine("已接收...");
                for (int i=0;i<k;i++)
                {
                    Console.Write(Convert.ToChar(b[i]));
                }
                
                // 处理客户端请求,给客户端回应
                ASCIIEncoding asen=new ASCIIEncoding();
                s.Send(asen.GetBytes("The string was recieved by the server."));
                Console.WriteLine("\n已发送回应信息");
                
                // 善后工作,释放资源
                s.Close();
                myList.Stop();
            }
            catch (Exception e)
            {
                Console.WriteLine("Error..... " + e.StackTrace);
            }	
        }
    }
    
    
    
    展开全文
  • C# Winform开发教程

    千次阅读 2020-06-22 20:56:44
    1.创建新的Winform工程 打开VS新建窗体应用就可以了,起个名字,设置路径 创建完毕后,会有一个Program.cs的脚本文件,这里的Main为入口函数。 2.窗体编辑 单击顶条区域,右侧弹出对应的属性栏。接下来只...
  • 高清 C# WinForm实践开发教程》附源码.zip 高清 C# WinForm实践开发教程》附源码.zip 高清 C# WinForm实践开发教程》附源码.zip
  • C# WinForm实践开发教程 窗体程序开发教程,清晰,有详细目录
  • 同时为配合《C# WinForm实践开发教程》的课堂内、外授课,还编写了《C# WinForm实践开发教程》的配套实训教程C# WinForm上机实训指导》,对《C# WinForm实践开发教程》内容进行了更深入的开发和实践操作。
  • C# WinForm

    2012-11-01 10:33:11
    C# WinForm实践开发教程电子书完整版 使用c#
  • c# winform电子教程

    2011-05-18 21:25:59
    一本关于c#的电子教材,讲解的还算可以,适合初学者
  • 以实例讲解C#Winform水晶报表的基本设置,格式化,排序与分组,常用应用,子报表的使用,以推模式使用ADO.NET数据集
  • C# WinForm实践开发教程
  • c# Winform实践开发教程 很详细的一本书,想学习C# WinForm开发的必备书籍
  • C#winform程序打包详细教程................一个打包工程建立好以后,点击项目上方,会看到打包工程主要操作的功能项,从左到右依次包括文件系统、注册表项、文件类型编辑、用户界面编辑、自定义操作编辑、和启动...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,741
精华内容 1,896
关键字:

c#winform教程

c# 订阅