图象显示和翻转控件(用户自定义控件),图象显示和翻转控件(用户自定义控件)
【 tulaoshi.com - vb 】
using System;namespace ImageZoomer
{
    /// 
    /// 
    /// 
    
    //枚举类型定义,定义图象的四种翻转方式
    public enum FlipModeStyle
    {
        NoFlip=0,//不翻转
        FlipX=1,//水平翻转
        FlipY=2,//垂直翻转
        FlipXY=3//水平垂直翻转
    }
    //事件数据类定义,报告图象的显示尺寸
    public class DisplaySizeChangedEventArgs:System.EventArgs
    {
        public int Width;
        public int Height;
        public DisplaySizeChangedEventArgs()
        {
        }
    }
    //事件代表的声明
    public delegate void DisplaySizeChangedEventHandler(object sender,DisplaySizeChangedEventArgs e);
    //用户自定义控件类
    public class ImageZoomerControl : System.Windows.Forms.Control
    {
        private int width;//控件宽度
        private int height;//控件高度
        private System.Drawing.Bitmap bitmap;//控件上的图象
        private FlipModeStyle flip;//图象的翻转方式
        private event DisplaySizeChangedEventHandler eventHandler;//事件
        //构造方法,初始化数据成员
        public ImageZoomerControl()
        {
            width=this.width;
            height=this.height;
            bitmap=null;
            eventHandler=null;
        }
        //宽度属性
        [
        Category("ImageZoomer"),
        Description("The displayed image width.")
        ]
        public int DisplayWidth
        {
            get
            {
                return width;
            }
            set
            {
                if(value>=0)
                {
                    width=value;
                    Invalidate(this.ClientRectangle);
                }
            }
        }
        //高度属性
        [
        Category("ImageZoomer"),
        Description("The displayed image height.")
        ]
        public int DisplayHeight
        {
            get
            {
                return height;
            }
            set
            {
                if(value>=0)
                {
                    height=value;
                    this.Invalidate(this.ClientRectangle);
                }
            }
        }
        //图象属性
        [
        Category("ImageZoomer"),
        Description("The image displayed by this control."),
        DefaultValue(null)
        ]
        public Bitmap DisplayImage
        {
            get
            {
                return bitmap;
            }
            set
            {
                bitmap=value;
                if(bitmap!=null)
                {
                    width=bitmap.Width;
                    height=bitmap.Height;
                }
                else
                {
                    width=this.width;
                    height=this.height;
                }
                this.Invalidate(this.ClientRectangle);
            }
        }
        //翻转方式属性
        [
        Category("ImageZoomer"),
        Description("Specify how the image will be flipped.")
        ]
        public FlipModeStyle FlipMode
        {
            get
            {
                return flip;
            }
            set
            {
                flip=value;
                this.Invalidate(this.ClientRectangle);
            }
        }
        //事件属性
        [
        Category("ImageZoomer"),
        Description("Occurs when the image size is changed.")
                        
来源:http://www.tulaoshi.com/n/20160129/1484690.html
看过《图象显示和翻转控件(用户自定义控件)》的人还看了以下文章 更多>>