zoukankan      html  css  js  c++  java
  • 简单的用户自定义控件



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

    namespace StephenJu.Second
    {
        
    public partial class UserControl1 : UserControl
        {
            
    public UserControl1()
            {
                InitializeComponent();
            }

            
    public event EventHandler AddressLine1Changed;//定义不包含事件数据的事件的方法
            public event EventHandler AddressLine2Changed;
            
    public event EventHandler ZoneChanged;
            
    public event EventHandler NumberChanged;

            [Category(
    "NumberData"),DescriptionAttribute("Get or sets the Number value"),DefaultValue("")]
            
    public string Number
            {
                
    get { return this.txtNumber.Text;}
                
    set
                {
                    
    if (txtNumber.Text != value)
                    {
                        txtNumber.Text 
    = value;
                        
    if (NumberChanged != null)
                        {
                            NumberChanged(
    this, PropertyChangedEventArgs.Empty);
                        }
                    }
                }
            }

            [Category(
    "AddressData"), DescriptionAttribute("Gets or sets the AddressLine1 value"), DefaultValue("")]
            
    public string AddressLine1
            {
                
    get { return this.txtAddress1.Text; }
                
    set
                {
                    
    if (txtAddress1.Text != value)
                    {
                        txtAddress1.Text 
    = value;
                        
    if (AddressLine1Changed != null)
                        {
                            AddressLine1Changed(
    this, PropertyChangedEventArgs.Empty);
                        }
                    }
                }
            }

            [Category(
    "AddressData"), DescriptionAttribute("Gets or sets the AddressLine2 value"), DefaultValue("")]
            
    public string AddressLine2
            {
                
    get { return this.txtAddress2.Text; }
                
    set
                {
                    
    if (txtAddress2.Text != value)
                    {
                        txtAddress2.Text 
    = value;
                        
    if (AddressLine2Changed != null)
                        {
                            AddressLine2Changed(
    this, PropertyChangedEventArgs.Empty);
                        }
                    }
                }
            }

            [Category(
    "ZoneData"), DescriptionAttribute("Gets or sets the Zone value"), DefaultValue("")]
            
    public string Zone
            {
                
    get { return this.txtZone.Text; }
                
    set
                {
                    
    if (txtZone.Text != value)
                    {
                        txtZone.Text 
    = value;
                        
    if (ZoneChanged != null)
                        {
                            ZoneChanged(
    this, PropertyChangedEventArgs.Empty);
                        }
                    }
                }
            }

            
    private void TextBoxControls_TextChanged(object sender,EventArgs e)
            {
                
    switch(((TextBox)sender).Name) //控件的名称
                {
                    
    case "txtAddress1":
                        
    if (AddressLine1Changed != null)
                            AddressLine1Changed(
    this, EventArgs.Empty);
                        
    break;
                    
    case "txtAddress2":
                        
    if (AddressLine2Changed != null)
                            AddressLine2Changed(
    this, EventArgs.Empty);
                        
    break;
                    
    case "txtZone":
                        
    if (ZoneChanged != null)
                            ZoneChanged(
    this, EventArgs.Empty);
                        
    break;
                    
    case "txtNumber":
                        
    if (NumberChanged != null)
                            NumberChanged(
    this, EventArgs.Empty);
                        
    break;
                }
            }
        }
    }

    摘自:virus
  • 相关阅读:
    js随机生成
    黑客代码雨效果
    HTML5 <details> 标签
    fieldset标签——使用(很少使用)
    jQuery总结
    vue element Cascader 级联选择器 选择任意一级选项 点击收起,点击label选中等问题详解
    Vue、element-ui的resetFields()方法重置表单无效问题及解决办法
    常用正则表达式(字符)
    一、日常经验记录
    python-opencv学习第二章
  • 原文地址:https://www.cnblogs.com/perfect/p/1207617.html
Copyright © 2011-2022 走看看