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. win7重装系统经验总结报告(2013年6月29日凌晨1:45)

    win7重装系统经验总结报告(2013年6月29日凌晨1:45) 步骤: 1.考虑被重做的电脑是否有重要文件在C盘.有则转移到D盘等非系统盘. 2.看该电脑是2GB内存还是4GB以上内存. 3.准备好 ...

  2. JVM(5) 类加载机制

    虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化.最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制. 一.类加载的时机 类从被加载到虚拟机内存中开 ...

  3. django-模板之comment标签(六)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  4. SpringBoot1.x与监控(六)

    由于2.x和1.x的监控不一样,此处先讲1.x 一 SpringBoot1.x监控 pom.xml <dependency> <groupId>org.springframew ...

  5. 学习笔记49_Redis

    Redis和memcache区别: 1 . mm是通过客户端驱动实现集群化,Redis是通过服务器配置文件集群 2. redis是可以进行持久化的存储 3. redis提供高级的数据结构,队列,栈都提 ...

  6. Python的闭包以及迭代器

    一,闭包 什么是闭包呢?闭包就是内层函数,对外层函数(非外层)的变量的引用,叫做闭包 def mz(): name = 'YJ' def xue(): print(name) #闭包 xue() mz ...

  7. python中“end=”用法

    python中“end=”用法:例如print(“#”,end=" \n"),默认换行,print(“#”,end=" ")则在循环中不换行

  8. android内嵌H5页(webview)如何定位

    一.切换至webview后再定位元素 (1)获取页面上下文 contexts = driver.contexts (2)切换至webview driver.switch_to.context(cont ...

  9. C函数库stdio.h概况

    库变量 size_t    这是无符号整数类型,它是 sizeof 关键字的结果. FILE      这是一个适合存储文件流信息的对象类型. fpos_t   这是一个适合存储文件中任何位置的对象类 ...

  10. LVS 十种算法

    LVS虚拟服务器是章文嵩在国防科技大学就读博士期间创建的,LVS可以实现高可用的.可伸缩的网络服务. LVS集群组成: 前端:负载均衡层  (一台或多台负责调度器构成) 中间:服务器群组层  (由一组 ...