2、使用 C# ,从 窗体原有控件继承(Button控件)

      本例通过自定义一个Button,这个Button继承了原Button的所有属性,且增加了一个 ButtonValve属性。使得在属性设计器里面给这个ButtonValve赋值后,可以把这个值给其他地方赋。

使用 C#,您可以通过 继承创建强大的自定义控件。 通过继承,你可以创建保留标准 Windows 窗体控件的所有固有功能的控件,但也包含自定义功能。 在本演练中,你将创建一个名为 ValueButton的简单继承控件。 此按钮将从标准 Windows 窗体 Button 控件继承功能,并公开名为 ButtonValue的自定义属性。

 如果要创建在 Web 窗体上使用的自定义控件,请参阅《开发自定义 ASP.NET 服务器控件》。

一、创建 控件库 和 控件

1、

2、

3、

 

4、完成后点击   文件----保存全部

5、完成后点击  文件----保存全部

二、往控件里面添加属性

继承的 Windows 窗体控件的可能用途之一是创建与标准 Windows 窗体控件的外观和感受相同、但公开自定义属性的控件。 在本节中,将向控件中添加名为ButtonValue的属性。

1、完成后点击  文件---保存

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsControlLibrary1
{
    public partial class ValButton: Button    // 换掉了UserControl
    {
        //public ValButton()
        //{
        //    InitializeComponent();  //★★★★去掉原有的这些!!★★★
        //}

        // Creates the private variable that will store the value of your
        // property.
        private
        int
        varValue;
        // Declares the property.
        public
        int
        ButtonValue
        {
            // Sets the method for retrieving the value of your property.
            get
            {
                return
                varValue;
            }
            // Sets the method for setting the value of your property.
            set
            {
                varValue =
                value
                ;
            }
        }
    }
}

此代码设置存储和检索ButtonValue属性的方法。get语句将返回的值设置为存储在私有变varValue中的值,而set语句通过使用value关键字设置该私有变量的值。

2、   ☆ 生成控件 ☆

在“生成”菜单中,单击“生成解决方案”。

三、测试控件

1、

2、

3、点击添加

4、

右键  “自制控件测试”,点击生成

5、

6、拖入自制控件,双击,并修改属性值,在双击后,填入以下值。

        private void valButton1_Click(object sender, EventArgs e)
        {
            textBox1.Text = valButton1.ButtonValue.ToString();
        }

6、Form1设置为启动项,点击  启动运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值