Go homepage(回首页) Upload pictures (上传图片) Write articles (发文字帖)
The author:(作者)qqpublished in(发表于) 2014/7/11 9:19:06 C#中创建用户控件应用实例
C#中创建用户控件应用实例
创建用户控件用户控件可以包含一个或多个Windows窗体控件、组件或代码块。它们能够通过验证用户输入、修改显示属性或执行用户所需的其他任务来扩展功能。用户可以将用户控件作为Windows桌面应用程序项目的一部分创建,且只在该项目的窗体上使用它。用户也可以在Windows Control Library 项目中创建它,将该项目编译成一个程序集,在其他项目中使用这些控件,甚至可以继承它们。创建用户控件的步骤如下所示。(1)打开一个Windows应用程序。(2)在菜单栏中选择“项目”/“添加用户控件”,如图1所示。图1 添加项(3)弹出“添加新项”对话框,在该对话框中选择“用户控件”选项,并在“名称”文本框中为用户控件命名,如图2所示,单击【添加】按钮即可在当前项目中添加一个用户控件。(4)向用户控件设计界面中添加控件,该界面主要用到的控件、控件属性设置及用途如表1所示,其设计结果如图3所示。图2 添加用户控件表1 用户控件主要用到的控件、控件属性设置及用途图3 用户控件运行结果示例用户控件的创建本示例对文本框的输入字符进行判断,判断输入的字符是数字,小数点和退格键,如果不是这些条件将会给出提示信息。网站源代码程序主要代码如下:private void txtOne_KeyPress(object sender, KeyPressEventArgs e){if ((e.KeyChar != 8 && !char.IsDigit(e.KeyChar)) && (e.KeyChar != 46 && e.KeyChar!=45)){MessageBox.Show("只充许输入数字,退格,小数点,负号");e.Handled = True;}}private void txtTwo_KeyPress(object sender, KeyPressEventArgs e){if ((e.KeyChar != 8 && !char.IsDigit(e.KeyChar)) && (e.KeyChar != 46 && e.KeyChar != 45)){MessageBox.Show("只充许输入数字,退格,小数点,负号");e.Handled = True;}}在如图3所示对话框中,单击【退出】按钮,程序调用MessageBox类的Show方法弹出“是否要退出”信息提示框,如果单击【是】按钮,退出应用程序。【退出】按钮的Click事件代码如下:private void bntClose_Click(object sender, EventArgs e){DialogResult stresce = MessageBox.Show("是否要退出","友情提示",MessageBoxButtons.YesNo,Message BoxIcon. Question);if (stresce.ToString() == "Yes"){ Application.Exit(); }}在如图3所示对话框中,单击【清除】按钮,程序将窗体中文本框的内容全部清空。【清除】按钮的Click事件代码如下:private void bntClear_Click(object sender, EventArgs e){this.txtOne.Text = "";this.txtSum.Text = "";txtTwo.Text = "";}在如图3所示对话框中,单击【求和】按钮,程序首先判断“数字一”和“数字二”文本框内容是否为空,如果为空,弹出信息提示;否则,对两个文本框中内容进行求和,并将结果显示在“和数”文本框中。【求和】按钮的Click事件代码如下:private void bntSum_Click(object sender, EventArgs e){if (txtOne.Text == ""){MessageBox.Show("加数一不能为空");this.txtOne.Focus();return;}// end block if本教程来自http://www.isstudy.com/if (txtTwo.Text == ""){MessageBox.Show("加数二不能为空");this.txtTwo.Focus();return;}Decimal i = Convert.ToDecimal(string.Format("{0:G}", this.txtOne.Text));Decimal j = Convert.ToDecimal(string.Format("{0:G}", this.txtTwo.Text));Decimal f = i + j;this.txtSum.Text = f.ToString();}完整程序代码如下:
赞