1.更换窗体图标

方法:单击窗体,更改icon属性。

2.调整窗体打开时默认位置

方法:单击窗体,更改StartPotion属性。

3.修改窗体大小

方法:单击窗体,更改Size属性。

4.设置窗体的背景图片

方法:单击窗体,更改BackgroundImage属性。

5.打开新窗体

首先新建一个窗体 然后

Form2 frm2 = new Form2(); frm2.Show(); this.Hide();

6.单击窗体事件Click

首先在窗体属性事件中双击Click

MessageBox.Show("已经单击了窗体");//弹出提示框

 7.窗体加载事件Load

例如:窗体在打开时,弹出提示框,询问是否查看窗体

if (MessageBox.Show("是否查看窗体?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
{
}

8.窗口关闭事件FormClosing

 DialogResult dr = MessageBox.Show("是否确定要关闭窗体", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);//创建了一个对话框
if (dr == DialogResult.Yes)
{
e.Cancel = false;//如果单击“是”,则关闭窗体
}
else //否则
{
e.Cancel = true;//如不执行操作
}

2019-07-24  22:01:12   write by xdd


9.MDI窗体(多文档界面)

下面将在父窗体中添加一个MenuStrip菜单,增加四个选项【打开子窗体,水平排列,垂直排列,层叠】

另注意Show方法和ShowDialog的区别是后者打开后,其它窗体会冻结。

 namespace MDI窗体练习
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void 加载子窗体ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form frm2 = new Form2();
frm2.MdiParent = this;
frm2.Show();
Form frm3 = new Form3();
frm3.MdiParent = this;
frm3.Show();
Form frm4 = new Form4();
frm4.MdiParent = this;
frm4.Show(); } private void 水平平铺ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileHorizontal);
} private void 垂直平铺ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileVertical);
} private void 层叠排列ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.Cascade);
}
}
}

  <窗体篇结束>


write by xdd  2019-07-25  23:49:37


10.控件介绍

10.1文本框Textbox

10.1.1 设置文本框Textbox的readonly属性使其为只读而不能编辑。

10.1.2 设置文本框的PasswordChar属性使其向输入密码一样以星号代替(在其属性框里输入*即可)

10.1.3 设置文本框的Multiline属性使其能输入多行数据

10.1.4 当文本框的内容被更改,会触发文本框的TextChanged事件

10.1.5 控件的名字写法:

控件.Text  如 label1.Text=textBox1.Text

10.2复选框CheckBox

10.2.1复选框CheckBox的CheckState属性返回值有Checked与Unchecked

10.2.2当复选框的状态变化时,会触发其CheckStateChanged事件。

一个选课信息的案例

        private void button3_Click(object sender, EventArgs e)
{
string strtop = "您选的课程如下:";
foreach(Control ctrl in this.Controls)//遍历窗体中的所有控件
{
if(ctrl.GetType().Name=="CheckBox") //判断是否为复选框 {
CheckBox cbox=(CheckBox)ctrl;
if (cbox.Checked)
{
strtop=strtop+"\n"+cbox.Text;
}//内层if的结束
} //外层if的结束 }//Foreach的结束
MessageBox.Show(strtop);
}

10.3 有格式文本框RichTextBox

10.3.1 调整ScrollBars属性以调整是否显示滚动条

10.3.2 利用RichTextBox制作网址超链接

10.4下拉组合框ComboBox

10.5 列表控件ListBox

10.5.1 向ListBox控件中添加或移除项

listBox1.Items.Add("语文");//添加项目
listBox1.Items.Remove("英语");//移除项目

10.5.2 设置SelectionMode为MultiExended可使用shift、ctrl、方向键实现多选

10.6  分组框控件GroupBox 

10.7 树(分支)控件TreeView

10.7.1 在控件的nodes属性中可以直接建立分支

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
label10.Text = "我选择" + e.Node.Text;
}

10.7.2 给分支加图片方法:

imageList1.Images.Add(Image.FromFile("1.png"));
treeView1.ImageLise=imageList1;
imageList1.ImageSize=new Size(,);

10.8 图片存储组件 ImageList

10.9 计时器Timer组件

10.10   <控件篇结束>


write by xdd  2019-07-27  00:47:19


11 菜单控件MenuStrip

12 工具栏控件ToolStrip

13 状态栏控件StatusStrip

14 对话框

14.1 消息框

MessageBox.Show(string text,string caption,MessageBoxButtons buttons,MessageBoxIcon icon);//内容,标题,按钮类型,图标(警告,问号,错误等)
MessageBox.Show("确定退出吗","警告",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);

14.2 打开文件对话框OpenFileDialog

openFileDialog1.ShowDialog();

14.3 打开文件夹对话框FolderBrowserDialog

14.4 另存为对话框 SaveFileDiolag

  <菜单、工具栏、对话框>



注:参考并推荐书籍

  • 《零基础学C#》(明日科技编著)
  • Windows Forms 2.0程序设计(原文为英文版:Windows Forms 2.0 Programming)

C#Windows Forms窗体、按钮-xdd的更多相关文章

  1. Windows Forms 窗体篇

    1,显示窗体 非模式: Form form = new Form(); form.Show(); 模式: Form form = new Form(); form.Show(); 2,拥有者窗体与附属 ...

  2. C#Windows Forms (Demo.SYS)--xdd

    private void Show_background_picture()//随机更换背景 { ";//默认值 Random ran = new Random(); , );//返回一个1 ...

  3. Windows Forms (一)

    导读 1.什么是 Windows Forms 2.需要学Windows Forms 么? 3.如何手写一个简单的Windows Forms 程序 4.对上面程序的说明 5.Form 类与Control ...

  4. C#Windows Forms 计算器--xdd

    一.计算器 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data ...

  5. DotNetBar for Windows Forms 12.9.0.0_冰河之刃重打包版及制作Visual Studio C#项目模板文件详解

    关于 DotNetBar for Windows Forms 12.9.0.0_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...

  6. System.Windows.Forms.Timer

    一.主要属性.方法和事件 Windows 窗体 Timer 是定期引发事件的组件.该组件是为 Windows 窗体环境设计的. 时间间隔的长度由 Interval 属性定义,其值以毫秒为单位.若启用了 ...

  7. System.Windows.Forms.Control : Component, IOleControl, IOleObject, IOleInPlaceObject, IOleInPlaceActiveObject....

    #region 程序集 System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ...

  8. Windows Forms编程实战学习:第三章 菜单

    第三章 菜单 1,控件和容器 所有的Windows Forms控件都是从System.Windows.Forms.Control类继承的,相关类的层次结构如下图所示: MarshalByRefObje ...

  9. Windows Forms编程实战学习:第一章 初识Windows Forms

    初识Windows Forms 1,用C#编程 using System.Windows.Forms;   [assembly: System.Reflection.AssemblyVersion(& ...

随机推荐

  1. day34作业

    作业 查看岗位是teacher的员工姓名.年龄 select name,age from teacher where post='teacher'; 查看岗位是teacher且年龄大于30岁的员工姓名 ...

  2. Redis(九)哨兵:Redis Sentinel

    Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点地址,对于很多应用场景这种故障处理的方式是无法接受的. Redis从2.8开始正式 ...

  3. Unity常用协程功能封装

    # 1.前言unity开发过程中,经常用到一些特定的协程功能,比如延时触发.等待触发.重复操作等.unity自带Invoke以及InvokeRepeating方法,但这些方法均采用反射机制,性能消耗, ...

  4. 使用asp.net core 3.0 搭建智能小车2

    上一篇中我们把基本的运行环境搭建完成了,这一篇中,我们实战通过树莓派B+连接HC-SR04超声波测距传感器,用c# GPIO控制传感器完成距离测定,并将距离显示在网页上. 1.HC-SR04接线 传感 ...

  5. 学习笔记56_WebServices

    1.Web services,就是新建项,选择Web服务: 2. 然后可以用Winform来调用webServices: 然后添加“服务引用”,,命名空间可以自己填. 3. 直接 new ,然后调用就 ...

  6. 使用Typescript重构axios(九)——异常处理:基础版

    0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...

  7. 使用Typescript重构axios(二十九)——添加baseURL

    0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...

  8. 你知道MySQL中的主从延迟吗?

    前言 在一个MySQL主备关系中,每个备库接受主库的binlog并执行. 正常情况下,只要主库执行更新生成所有的binlog,都可以传到备库并被正常的执行,这样备库就能够达到跟主库一样的状态,这就是最 ...

  9. Unity中动态创建Mesh

    什么是Mesh? Mesh是指的模型的网格,3D模型是由多边形拼接而成,而多边形实际上又是由多个三角形拼接而成的.即一个3D模型的表面其实是由多个彼此相连的三角面构成.三维空间中,构成这些三角形的点和 ...

  10. 玩转VSCode-完整构建VSCode开发调试环境

    随着VSCode的不断完善和强大,是时候将部分开发迁移到VS Code中了. 目前使用VS2019开发.NET Core应用,一直有一个想法,在VS Code中复刻VS的开发环境,同时迁移到VS Co ...