Chinaunix首页 | 论坛 | 博客
  • 博客访问: 12875967
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: C#/.net

2015-03-28 17:17:00

    C#Form和Load和Shown这两个玩意容易混淆不?

    案例测试一下:

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. namespace LoadShown
  10. {
  11.     public partial class Form1 : Form
  12.     {
  13.         public Form1()
  14.         {
  15.             InitializeComponent();
  16.         }
  17.         private string[] mMessage = new string[] { "首先调用","第二调用"};
  18.         private int mIndex = 0;
  19.         private void Form1_Load(object sender, EventArgs e)
  20.         {
  21.             MessageBox.Show("Form1_Load" + mMessage[mIndex++]);
  22.         }
  23.         private void Form1_Shown(object sender, EventArgs e)
  24.         {
  25.             MessageBox.Show("Form1_Shown" + mMessage[mIndex++]);
  26.         }
  27.     }
  28. }

image

image

Form.Load 事件

    在第一次显示窗体发生。注意这里有一个前字。明显它的触发要比Shown中的早。

Form.Shown 事件

    只有在首次显示窗体时才会引发 Shown 事件;随后执行的最小化、最大化、还原、隐藏、显示或无效化和重新绘制操作都不会引发该事件。

    C#Form和Load和Shown从此不再混淆。

参考文献:

阅读(3938) | 评论(0) | 转发(0) |
0

上一篇:C中的strlen和sprintf

下一篇:hashtable排序

给主人留下些什么吧!~~