⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 touchscreenexplorer.cs

📁 Upload Source code in temp folder
💻 CS
字号:
/* *************************************************
 * Development : Rajesh Lal(connectrajesh@hotmail.com)
 * Date: 04/15/2007
 * Company Info: www.csharptricks.com
 * See EULA.txt and Copyright.txt for additional information
 * **************************************************/
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms;
using System.IO;

namespace PenFlicksDemo
{
	public class TouchScreenExplorer : PenFlicksDemo.BasePane
	{
		private System.Windows.Forms.ImageList imglpreview;
		private Controls.Development.ImageListBox listBox1;
		private System.ComponentModel.IContainer components = null;

		public delegate void ImageNextEventHandler(object sender, EventArgs e);	
		public delegate void ImageChangedEventHandler(object sender, EventArgs e);
        public delegate void SelectFolderEventHandler(object sender, EventArgs e);
        public delegate void GoBackEventHandler(object sender, EventArgs e);
        public delegate void GoForwardEventHandler(object sender, EventArgs e);
        private ImageChangedEventHandler ImageChangedEvent;
        private SelectFolderEventHandler SelectFolderEvent;
        private GoBackEventHandler GoBackEvent;
        private GoForwardEventHandler GoForwardEvent;
        
		public event ImageChangedEventHandler ImageChanged
		{
			add
			{
				ImageChangedEvent = (ImageChangedEventHandler) System.Delegate.Combine(ImageChangedEvent, value);
			}
			remove
			{
				ImageChangedEvent = (ImageChangedEventHandler) System.Delegate.Remove(ImageChangedEvent, value);
			}
		}
        public event SelectFolderEventHandler SelectFolder
        {
            add
            {
                SelectFolderEvent = (SelectFolderEventHandler)System.Delegate.Combine(SelectFolderEvent, value);
            }
            remove
            {
                SelectFolderEvent = (SelectFolderEventHandler)System.Delegate.Remove(SelectFolderEvent, value);
            }
        }
        public event GoBackEventHandler GoBack
        {
            add
            {
                GoBackEvent = (GoBackEventHandler)System.Delegate.Combine(GoBackEvent, value);
            }
            remove
            {
                GoBackEvent = (GoBackEventHandler)System.Delegate.Remove(GoBackEvent, value);
            }
        }
        public event GoForwardEventHandler GoForward
        {
            add
            {
                GoForwardEvent = (GoForwardEventHandler)System.Delegate.Combine(GoForwardEvent, value);
            }
            remove
            {
                GoForwardEvent = (GoForwardEventHandler)System.Delegate.Remove(GoForwardEvent, value);
            }
        }
	
		private int imageCount=0; 
		private string selectedImage ="";
		private string selectedPath ="";
        private ToolTip toolTip1;
        private ListView explorerListItems;
        private ListViewItem explorerSelectedItem = null;


			[
			Category("Appearance"),
			Description("Selected Image Name")
			]
			public string SelectedImage
			{
				get
				{
					return this.selectedImage;
				}
				set
				{
					this.selectedImage = value;
					this.Invalidate();
				}
			}
        [
        Category("Appearance"),
        Description("Selected Item")
        ]
        public ListViewItem ExplorerSelectedItem
        {
            get
            {
                return this.explorerSelectedItem;
            }
            set
            {
                this.explorerSelectedItem = value;
                this.Invalidate();
            }
        }
			[
			Category("Appearance"),
			Description("Selected Path of Image")
			]
			public string SelectedPath
			{
				get
				{
					return this.selectedPath;
				}
				set
				{
					this.selectedPath = value;
					this.Invalidate();
				}
			}

			[
			Category("Appearance"),
			Description("Number of images in the selected path")
			]
			public int ImageCount
			{
				get
				{
					return this.imageCount;
				}
				set
				{
					this.imageCount = value;
					this.Invalidate();
				}
			}


		public TouchScreenExplorer()
		{
			// This call is required by the Windows Form Designer.
			InitializeComponent();
			//InitialFolder();
			// TODO: Add any initialization after the InitializeComponent call
		}
		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
        /// 
        protected override System.Windows.Forms.CreateParams CreateParams
        {
            get
            {
                CreateParams Cp = base.CreateParams;
                Cp.Style = Cp.Style & ~0x200000;
                return Cp;
            }
        }


		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}
		#region Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
            this.components = new System.ComponentModel.Container();
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TouchScreenExplorer));
            this.imglpreview = new System.Windows.Forms.ImageList(this.components);
            this.listBox1 = new Controls.Development.ImageListBox();
            this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
            this.SuspendLayout();
            // 
            // imglpreview
            // 
            this.imglpreview.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imglpreview.ImageStream")));
            this.imglpreview.TransparentColor = System.Drawing.Color.Magenta;
            this.imglpreview.Images.SetKeyName(0, "");
            this.imglpreview.Images.SetKeyName(1, "");
            this.imglpreview.Images.SetKeyName(2, "");
            this.imglpreview.Images.SetKeyName(3, "");
            // 
            // listBox1
            // 
            this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
                        | System.Windows.Forms.AnchorStyles.Left)
                        | System.Windows.Forms.AnchorStyles.Right)));
            this.listBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
            this.listBox1.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
            this.listBox1.ImageList = this.imglpreview;
            this.listBox1.IntegralHeight = false;
            this.listBox1.ItemHeight = 36;
            this.listBox1.Location = new System.Drawing.Point(4, 24);
            this.listBox1.Margin = new System.Windows.Forms.Padding(2, 3, 3, 3);
            this.listBox1.Name = "listBox1";
            this.listBox1.Size = new System.Drawing.Size(194, 278);
            this.listBox1.TabIndex = 65;
            this.listBox1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listBox1_MouseDoubleClick);
            this.listBox1.MouseHover += new System.EventHandler(this.listBox1_MouseHover);
            this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged);
            this.listBox1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listBox1_MouseUp);
            this.listBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listBox1_KeyDown);
            // 
            // TouchScreenExplorer
            // 
            this.Controls.Add(this.listBox1);
            this.Name = "TouchScreenExplorer";
            this.Size = new System.Drawing.Size(200, 304);
            this.Controls.SetChildIndex(this.listBox1, 0);
            this.ResumeLayout(false);

		}
		#endregion
        public void ResetFolder()
        {
            listBox1.Items.Clear();
            imglpreview.Images.Clear();  
  
        }
        public void SetFolder(ListView myView, ImageList imglp)
		{
            explorerListItems = myView;
			//' create file browser dialog
			//' restore the selected folder location
			//	fileListBox1.Path = myPath;
            //  fileListBox1.Refresh(); 
            //    SelectedPath = myPath;

               listBox1.Items.Clear();
               imglpreview.Images.Clear();
                //imglpreview = myImageList;
                int i = 0;	
                ImageCount = 0;
					
                
                    for (int j = 0; j < myView.Items.Count; j++)   
                    {
                        try
                        {

                        imglpreview.Images.Add(imglp.Images[j] );
                        listBox1.Items.Add(new Controls.Development.ImageListBoxItem(myView.Items[j].Text, j));
                        //toolTip1.SetToolTip(listBox1.Items[j], myView.Items[j].Text);
                        // FileInfo  myF = new FileInfo(myPath + "/" + fileListBox1.get_Items(j).Substring(0,fileListBox1.get_Items(j).Length-4) + ".xml"  );  
                        // if (myF.Exists)
                        // {
                        //    if (j==0)
                        //    {
                        //        SelectedImage = fileListBox1.get_Items(j);
                        //    }
                        //    Image myImage = Image.FromFile(myPath + "/" + fileListBox1.get_Items(j));
                       
                        //    myImage.Dispose(); 	
                        //    imglpreview.Images.Add(Image.FromHbitmap( myView.Items[j].ImageList.Images[j] );
                        //    myImage.Dispose(); 	
 
                        }
                        catch(Exception e1)
                        {
                            MessageBox.Show(e1.Message + i);   
                        }
                    

                   // listBox1.SelectedIndex = 0;   
                }
               
		}

		private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
		{
		//	SelectedImage = fileListBox1.get_Items(listBox1.SelectedIndex) ;   
			ImageChangedEvent(this,EventArgs.Empty);
            try
            {
                Point p = Cursor.Position;
                p = listBox1.PointToClient(p);
                toolTip1.SetToolTip(listBox1, listBox1.Items[listBox1.IndexFromPoint(p)].Text);
                explorerSelectedItem = explorerListItems.Items[listBox1.IndexFromPoint(p)];
            }
            catch (Exception)
            {
                //MessageBox.Show(e1.Message);   
            }

		}
		public void NextImage()
		{
			if (listBox1.SelectedIndex < listBox1.Items.Count-1)
			{
				listBox1.SelectedIndex = listBox1.SelectedIndex +1;
		//		SelectedImage = fileListBox1.get_Items(listBox1.SelectedIndex) ;   
				ImageChangedEvent(this,EventArgs.Empty);  
			}
		}

		public void PreviousImage()
		{
			if (listBox1.SelectedIndex >0)
			{
				listBox1.SelectedIndex = listBox1.SelectedIndex - 1;
			//	SelectedImage = fileListBox1.get_Items(listBox1.SelectedIndex) ;   
				ImageChangedEvent(this,EventArgs.Empty);  
			}
		}

        private void listBox1_MouseHover(object sender, EventArgs e)
        {
          
        }

        private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            ResetFolder(); 
            SelectFolderEvent(this, EventArgs.Empty);
        }

        private void listBox1_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right ) 
            GoBackEvent(this, EventArgs.Empty);

        }

        private void listBox1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.Alt && (e.KeyCode == Keys.Left) )
                GoBackEvent(this, EventArgs.Empty);

            if (e.KeyCode == Keys.Back)
                GoBackEvent(this, EventArgs.Empty);

            if (e.Alt && (e.KeyCode == Keys.Right))
            {
                ResetFolder(); 
                GoForwardEvent(this, EventArgs.Empty);
            }
            if (e.KeyCode == Keys.Enter)
            {
                ResetFolder();
                GoForwardEvent(this, EventArgs.Empty);
            }

        }

        

	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -