C#程序设计之windows应用程序设计基础

Posted shangzh!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#程序设计之windows应用程序设计基础相关的知识,希望对你有一定的参考价值。

C#程序设计之windows应用程序设计基础

例题1

题目描述
设计一个“简单通讯录”程序,在窗体上建立一个下拉式列表框、两个文本框和两个标签,实现以下功能:当用户在下拉式列表框中选择一个学生姓名后,在“学生姓名”、“地址”两个文本框中分别显示出对应的学生和地址。

代码
窗体代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1

    public partial class Form1 : Form
    
        public Form1()
        
            InitializeComponent();
        

        private void lstStudent_SelectedIndexChanged(object sender, EventArgs e)
        
            if (this.lstStudent.SelectedItems.Count == 0)
            
                return;
            
            else
            
                string strName=this.lstStudent.SelectedItem.ToString();
                switch (strName)
                
                    case "张三":
                        this.txtName.Text = "张三";
                        this.txtAddress.Text = "江苏";
                        break;
                    case "李国":
                        this.txtName.Text = "李国";
                        this.txtAddress.Text = "北京";
                        break;
                    case "赵田":
                        this.txtName.Text = "赵田";
                        this.txtAddress.Text = "上海";
                        break;
                    default:
                        break;
                
            
        

        
    

运行结果


例题2

题目描述
设计一个Windows应用程序,在窗体上有一个文本框、一个按钮,实现当用户单击按钮时文本框内显示当前是第几次单击该按钮的功能

代码
窗体代码

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;

namespace Chap9_2

	/// <summary>
	/// Form1 的摘要说明。
	/// </summary>
	public class Form1 : System.Windows.Forms.Form
	
		private System.Windows.Forms.Label lblText;
		private System.Windows.Forms.Button btnClickMe;
		private System.Windows.Forms.TextBox txtName;
		/// <summary>
		/// 必需的设计器变量。
		/// </summary>
		private System.ComponentModel.Container components = null;

		public Form1()
		
			//
			// Windows 窗体设计器支持所必需的
			//
			InitializeComponent();

			//
			// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
			//
		

		/// <summary>
		/// 清理所有正在使用的资源。
		/// </summary>
		protected override void Dispose( bool disposing )
		
			if( disposing )
			
				if (components != null) 
				
					components.Dispose();
				
			
			base.Dispose( disposing );
		

		#region Windows 窗体设计器生成的代码
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		
            this.lblText = new System.Windows.Forms.Label();
            this.btnClickMe = new System.Windows.Forms.Button();
            this.txtName = new System.Windows.Forms.TextBox();
            this.SuspendLayout();
            // 
            // lblText
            // 
            this.lblText.Location = new System.Drawing.Point(107, 103);
            this.lblText.Name = "lblText";
            this.lblText.Size = new System.Drawing.Size(138, 41);
            this.lblText.TabIndex = 0;
            this.lblText.Text = "请点击下面的按钮";
            // 
            // btnClickMe
            // 
            this.btnClickMe.Location = new System.Drawing.Point(107, 185);
            this.btnClickMe.Name = "btnClickMe";
            this.btnClickMe.Size = new System.Drawing.Size(128, 31);
            this.btnClickMe.TabIndex = 1;
            this.btnClickMe.Text = "点我";
            this.btnClickMe.Click += new System.EventHandler(this.btnClickMe_Click);
            // 
            // txtName
            // 
            this.txtName.Location = new System.Drawing.Point(96, 257);
            this.txtName.Name = "txtName";
            this.txtName.Size = new System.Drawing.Size(149, 25);
            this.txtName.TabIndex = 2;
            this.txtName.Validating += new System.ComponentModel.CancelEventHandler(this.txtName_Validating);
            // 
            // Form1
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(8, 18);
            this.ClientSize = new System.Drawing.Size(328, 313);
            this.Controls.Add(this.txtName);
            this.Controls.Add(this.btnClickMe);
            this.Controls.Add(this.lblText);
            this.Name = "Form1";
            this.Text = "Form1";
            this.ResumeLayout(false);
            this.PerformLayout();

		
		#endregion

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

		private int count = 0;

		private void btnClickMe_Click(object sender, System.EventArgs e)
		
			count++;
			lblText.Text = "你一共点击了" + count.ToString() + "次按钮";
		

		private void txtName_Validating(object sender, System.ComponentModel.CancelEventArgs e)
		
			if(txtName.Text.Trim() == string.Empty)
			
				MessageBox.Show ("用户名为空,请重新输入!");
				txtName.Focus();
			
		

		//private int count = 0;
	


运行结果

例题3

题目描述
在窗体上创建3个文本框,编写一个程序,当程序运行时,在第一个文本框中输入一行文字,则在另两个文本框中同时显示相同的内容,但显示的字号和字体不同,要求输入的字符数不超过10个。

代码
窗体代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TextBox

    public partial class Form1 : Form
    
        public Form1()
        
            InitializeComponent();
        

        private void textBox1_TextChanged(object sender, EventArgs e)
        
            textBox2.Text = textBox1.Text;
            textBox3.Text = textBox1.Text;            
        
    

运行结果

例题4

题目描述
实现一个简单的计算器程序,此程序的设计界面如图,运行结果如图。

代码
窗体代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication1

    public partial class Form1 : Form
    
        public Form1()
        
            InitializeComponent();
        

        char  chrOP;

        private void cmbOP_SelectedIndexChanged(object sender, EventArgs e)
        
            switch (cmbOP.SelectedIndex)
            
                case 0:
                    chrOP = '+' ;
                    break;
                case 1:
                    chrOP = '-';
                    break;
                case 2:
                    chrOP = '*' ;
                    break;
                case 3:
                    chrOP = '/' ;
                    break;
            

        

        private void btnCalculator_Click(object sender, EventArgs e)
        
            string s1, s2;
            s1 = txtNum1.Text;
            if (s1 == "")
            
                MessageBox.Show("请输入数值1");
                txtNum1.Focus();
                return;
            
            s2 = txtNum2.Text;
            if (s2 == "")
            
                MessageBox.Show("请输入数值2");
                txtNum2.Focus();
                return;
             
            

            Single arg1 = Convert.ToSingle(s1);
            Single arg2 = Convert.ToSingle(s2);
            Single r;
            switch (chrOP)
            
                case '+':
                    r = arg1 + arg2;
                    break;                    
                case '-':
                    r = arg1 - arg2;
                    break;
                case '*':
                    r = arg1 * arg2;
                    break;
                case '/':
                    if (arg2 == 0)
                    
                        throw new ApplicationException();
                    
                    else
                    
                        r = arg1 / arg2;
                    
                    break;
                default:
                    throw new ArgumentException();
                    //MessageBox.Show("请选择操作符");
                    //r = 0;
                    //break;
            
            txtResult.Text = r.ToString();
       
        
    

运行结果

例题5

题目描述
编写一个程序:输人两个数,并可以用命令按钮选择执行加、减、乘、除运算。窗体上创建两个文本框用于输人数值,创建3个标签分别用于显示运算符、等号和运算结果,创建5个命令按钮分别执行加、减、乘、除运算和结束程序的运行,如图9-63所示,要求在文本框中只能输人数字,否则将报错。程序的运行结果如图9-64所示。

代码
窗体代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Button

    public partial class Form1 : Form
    
        Single result;
        public Form1()
        
            InitializeComponent();
        

        private void btnAdd_Click(object sender, EventArgs e)
        
            label1.Text = "+";
            result = Convert.ToSingle(textBox1.Text) + Convert.ToSingle(textBox2.Text);
            textBox3.Text = result.ToString();
        

        //只允许输入0~9的数字
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        
            //在限制用户输入非0~9之间的数字的同时,不应限制用户输入“回车”和“退格”,
            //否则将给用户带来不便
            if ((e.KeyChar != 8 && !char.IsDigit(e.KeyChar)) && e.KeyChar != 13)
            
                MessageBox.Show("只能输入数字", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                e.Handled = true;//表示已经处理了KeyPress事件
            
        

        private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
        
            //在限制用户输入非0~9之间的数字的同时,不应限制用户输入“回车”和“退格”,
            //否则将给用户带来不便
            if ((e.KeyChar != 8 && !char.IsDigit(e.KeyChar)) && e.KeyChar != 13)
            
                MessageBox.Show("只能输入数字", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                e.Handled = true;//表示已经处理了KeyPress事件
            
        

        private void btnSub_Click(object sender, EventArgs e)
        
            label1.Text = "-";
            result = Convert.ToSingle(textBox1.Text) - Convert.ToSingle(textBox2.Text);
            textBox3.Text = result.ToString();
        

        private void btnMul_Click(object sender, EventArgs e)
        
            label1.Text = "*";
            result = Convert.ToSingle(textBox1.Text) * Convert.ToSingle(textBox2.Text);
            textBox3.Text = result.ToString();
        

        private void btnDiv_Click(object sender, EventArgs e)
        
            if (Convert.ToSingle(textBox2.Text) == 0)
            
                MessageBox.Show("请输入数字", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                textBox2.Text = ""; 
                textBox2.Focus();
                textBox3.Text = "";  
            
            else
            
                label1.Text = "/";
                result = Convert.ToSingle(textBox1.Text) / Convert.以上是关于C#程序设计之windows应用程序设计基础的主要内容,如果未能解决你的问题,请参考以下文章

C#程序设计之面向对象程序设计基础

C# .net入门之Windows窗体程序

Java设计模式之初学者笔记——设计模式基础讲解

《C#零基础入门之百识百例》(六十一)结构体的定义 -- 时间设计

c#基础之面向对象设计与开发

C#基础之CLR的执行模型