日期:2013-10-02  浏览次数:20438 次

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

namespace ImageZoomer
{
    /// <summary>
    ///
    /// </summary>
    
    //枚举类型定义,定义图象的四种翻转方式
    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)
                {