用Visual C#做WinForm组件

我们知道.NET的开发平台提了一个名称空间System.Windows.Forms,在此名称空间中提供了许多开发Windows Form的类和对象,这些类和对象不仅内容十分丰富,而且还具有十分强大的拓展性,可以利用这些类和对象,简单而迅速的开发出自己需要的组件来。本文就将介绍如何利用.Net 开发平台原有的类和对象写一个自己的WinForm组件,如何编译自己的组件,且如何在一个客户程序中使用它。

一. 程序设计和运行的基本环境:

(1).视窗2000服务器版

(2)..Net FrameWork SDK Beta 2 版

二. 本文中开发的组件功能介绍:

(1).本文中开发的组件是一个自定义的组件,它是由二个组件合并而成的,一个是标签组件( Lable ),另外一个是文本框组件( TextBox )。

(2).自定义组件中定义了了二个新的属性,一个属性是Text,这个属性是通过派生原有的文本框中的Text属性而得到的;另外一个属性是LabelText,它是通过继承了原有的标签的Text属性而得到的。

(3).组件的用途。

在程序设计中,很多时候是要定义一个标签,标签显示要输入的文本内容。然后再定义一个文本框,填入信息。使用了本组件后,只要定义一个此组件,然后对组件属性设定不同的值就可以了。这样就简化了程序设计过程。这一点将在后面的组件应用中得到体现。

三. 开发组件中的难点和重点:

(1).如何设定自定义组件的内容:

本组件是由标签组件和文本框组件组成的,首先要定义此组件的组成结构。具体的程序设计如下:

//LabledTextBox组件是继承了 UserControl组件的
public class LabeledTextBox : UserControl
{
 //定义本组件的组成结构
 private Label myLabel ;
 private TextBox myTextBox ;
 ……
}

(2).如何派生文本框中的Text属性,而生成自己的新的属性:

由于是派生文本框的Text属性,所以在程序中用到了关键字"override"。并且通过关键字"set"设定属性,"get"关键字来读取组件的属性值。具体程序设计如下:

//组件中的Text属性,是从文本框的Text的属性派生而来
public override string Text
{
 get
 {
  return myTextBox.Text ;
 }
 set
 {
  myTextBox.Text = value ;
 }
}

(3).如何创建一个新的属性LabelText,并且此属性值是通过继承现有的标签的"Text"属性而得到的。具体的程序设计如下:

//创建一个新的属性LabelText,并且此属性的值是通过继承此组件中的标签的Text属性值
public string LabelText
{
 get
 {
  return myLabel.Text ;
 }
 set
 {
  myLabel.Text = value ;
 }
}

时间: 2024-07-29 07:33:09

用Visual C#做WinForm组件的相关文章

用Visual C#做托盘程序

所谓托盘程序顾名思义就是象托起的盘子一样的程序.而所谓的托起的盘子就是程序运行中显示出的图标,而托起的位置就是视窗系统的的工具栏了.托盘程序具有直观.占用屏幕空间较小并且可以为它定义多个功能菜单,这就给操作者带来了方便,所以越来越多的程序设计者都把程序设计成托盘这种方式.我们已经看过了用其他语言设计托盘程序的例子,其中的大部分,整个设计过程还是相对烦琐的.而对于微软公司极力推荐的下一代程序开发语言--Visual C#来说,却可以十分方便设计出一个托盘程序.本文就是介绍Visual C#设计托盘

使用VS.Net 做.Net组件

http://www.pconline.com.cn/pcedu/empolder/gj/vc/10203/43429.html 出处:PConline责任编辑:zwg [02-3-29 9:23]  作者:www.dlking.com   使用VS.Net 做.Net组件 转载自: http://www.dlking.com 作者不详 用Visual C#来做组件,其实是一件很容易的事情.至少比用VISUAL C++要容易的多.在本文中,笔者将为您详细介绍如何来做一个组件.我们可以通过二个步骤

转载:用Visual C#动态生成组件,请看!(二)

三. 程序设计中的关键步骤以及解决方法: 文中软件主要功能是用通过窗体上的二个按钮来创建二个不同类型的WinForm组件--Button组件和TextBox组件,并在创建的同时为每一个组件的属性赋值,给每一个创建的组件也创建了事件. (1).如何在窗体上创建Button组件: 其实用Visual C#创建一个组件是十分方便的,只用下列二行语句就可以完成了://创建一个新的Button组件Button myButton = new Button ( ) ;//在窗体中显示此按钮this.Contr

用Visual C#动态生成组件(转自中国在线)

用Visual C#动态生成组件(附图) 以前在用Delphi写程序的时候,总不喜欢在窗体上排放很多组件,这一方面有点不美观,并且在调试程序时候,也不是十分方便.通常在写程序的时候,当要用到某些组件,采用的方法一般都是动态创建,用完以后就释放掉.Visual C#在程序运行的时候也可以动态创建组件,下面就结合一个程序例子来具体介绍如何用Visual C#动态生成组件.首先让我们了解一下,在动态创建组件的过程中要用到的一些概论和理论. 一. Boxing (装箱)和Unboxing (出箱): 在

使用visual studion2010做单元测试,数据源为csv,运行结果报错

问题描述 使用visual studion2010做单元测试,数据源为csv,运行结果报错 一个简单的乘法例子 /// ///Multiply 的测试 /// [DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|MultiplyTest.csv", "MultiplyTest#csv", DataAccessMethod.Sequential

数据库前台-如何用Microsoft visual studio2008做数据库的前台

问题描述 如何用Microsoft visual studio2008做数据库的前台 我要用上述软件为数据库(SQL server 2008r2)做前台,能不能告诉我怎么做,或着有哪些书是这方面教程的. 解决方案 http://blog.163.com/asp_neter/blog/static/17510918820109162573744/

找一个DevExpress 9.3安装包,做winform开发,急用!

问题描述 找一个DevExpress9.3安装包,做winform开发,急用! 解决方案 解决方案二:14版本的9.3的太早了http://pan.baidu.com/s/1pKk07Yr解决方案三:引用楼主yinhangzhe的回复: 找一个DevExpress9.3安装包,做winform开发,急用! 是一个老项目做维护,不得已才找这个版本的解决方案四:这是收费的阿

学生信息系统求助-有没有用vs2010加access 2003,Windows forms application Visual C#做学生信息系统的资料,

问题描述 有没有用vs2010加access 2003,Windows forms application Visual C#做学生信息系统的资料, 期末大作业有点棘手啊,老师讲的天花乱坠而我却难以下手 解决方案 http://download.csdn.net/detail/fg201041842103/6021349

转载:用Visual C#动态生成组件,请看!(一)

用Visual C#动态生成组件 ·阿虎· 以前在用Delphi写程序的时候,总不喜欢在窗体上排放很多组件,这一方面有点不美观,并且在调试程序时候,也不是十分方便.通常在写程序的时候,当要用到某些组件,采用的方法一般都是动态创建,用完以后就释放掉.Visual C#在程序运行的时候也可以动态创建组件,下面就结合一个程序例子来具体介绍如何用Visual C#动态生成组件.首先让我们了解一下,在动态创建组件的过程中要用到的一些概论和理论. 一. Boxing (装箱)和Unboxing (出箱):