夜光带你走进C# 自定义控件(十七)擅长的领域

夜光序言:

 

爱你,就是爱现在的你,不折腾你的过去,不强迫你的改变,与你一起面对风雨,让爱的天空云淡风轻,绿意盎然。

每时每刻,只愿把快乐种到你心上。

 

 

 

 

 

 

正文:

 

 

 

 

报这个错是为什么呢

是因为文件夹的名字是C#

这样就可以了嗯

我们需要让这两个具有互斥性,并且有一个默认的值

 

我们新建一个项目,右键自定义个标签

 

 

 

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

namespace MyControl
{
    public partial class SexControl: UserControl
    {
        public SexControl()
        {
            InitializeComponent();
        }
        //夜光:自定义控件的属性
        [Browsable(true)]
        //指定属性或者事件的说明
        //Category,给自定义属性分组的名称
        [Description("默认选中的复选框,int型,索引从0开始,0则是第一个复选框"),Category("自定义属性"),DefaultValue(-1)]
        public int CheckIndex { get; set; }

        private void SexControl_Load(object sender, EventArgs e)
        {
            if(CheckIndex == 0)
            {
                cBoxMan.Checked = true;
                cBoxWoman.Checked = false;
            }
            else if(CheckIndex == 1)
            {
                cBoxMan.Checked = false;
                cBoxWoman.Checked = true;
            }
            else
            {
                cBoxMan.Checked = false;
                cBoxWoman.Checked = false;
            }
        }

        private void cBoxMan_CheckedChanged(object sender, EventArgs e)
        {
            if(cBoxMan.Checked == true)
            {
                cBoxWoman.Checked = false;
            }
            else
            {
                cBoxWoman.Checked = true;
            }
        }

        private void cBoxWoman_CheckedChanged(object sender, EventArgs e)
        {
            if(cBoxWoman.Checked == true)
            {
                cBoxMan.Checked = false;
            }
            else
            {
                cBoxMan.Checked = true;
            }
        }
    }
}

 

 

 

 

 

 

 

 

 

需要形参

 

 

 

 

没有设置高度等属性,所以导致

 

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

namespace MyControl
{
    public partial class FrmPop : Form
    {
        //夜光:构造函数  构造函数的名字和class的名字是一样的
        public FrmPop(int PopWidth,int PopHeight,string PopText)
        {
            InitializeComponent();
            //初始化窗体的时候,改变窗体的大小尺寸
            //ClientSize→工作区域的大小
/*            this.ClientSize = new System.Drawing.Size(800, 450);*/
            //我们需要改变的是窗体的大小
            this.Size = new System.Drawing.Size(PopWidth, PopHeight);
            this.Text = PopText;
        }
    }
}

 

 

 

 

 

 

 

 

 

 

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

namespace MyControl
{
    public partial class FrmPop : Form
    {
        //构造函数  构造函数的名字和class的名字是一样的
        public FrmPop(int PopWidth,int PopHeight,string PopText)
        {
            InitializeComponent();
            //初始化窗体的时候,改变窗体的大小尺寸
            //ClientSize→工作区域的大小
/*            this.ClientSize = new System.Drawing.Size(800, 450);*/
            //我们需要改变的是窗体的大小
            this.Size = new System.Drawing.Size(PopWidth, PopHeight);
            this.Text = PopText;
        }
        //我们要写一个事件了,窗体load
        private void FrmPop_Load(object sender, EventArgs e)
        {
            //随机字符串,夜光:全球唯一   32位
            for (int i = 0; i<= 50; i++){ 
            string s = Guid.NewGuid().ToString("N");
            listBoxGuid.Items.Add(s);
            }
        }

        private void listBoxGuid_DoubleClick(object sender, EventArgs e)
        {
            //取值
            PopControl.s = listBoxGuid.SelectedItem.ToString();
            //关闭当前窗体
            this.Close();
        }
    }
}

 

 

我们加入刚才的控件

 

 

我们使用刚才制作的控件

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值