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

📄 formmain.cs

📁 Normally a list view is updated by a user directly by selecting a list view item and then editing or
💻 CS
字号:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Text;
using PJControls;

namespace FadingListViewDemo
{
	public class FormMain : System.Windows.Forms.Form
	{
        private FadingListView fadingListView;
        private System.Windows.Forms.Button buttonAdd;
        private System.Windows.Forms.Button buttonDelete;
        private System.Windows.Forms.Button buttonEdit;
        private System.Windows.Forms.ColumnHeader columnHeaderAge;
        private System.Windows.Forms.ColumnHeader columnHeaderFirstname;
        private System.Windows.Forms.ColumnHeader columnHeaderLastname;
        private System.Windows.Forms.Label labelTag;
        private System.Windows.Forms.TextBox textBoxTag;
        private System.ComponentModel.IContainer components = null;

		public FormMain()
		{
			//
			// Required for Windows Form Designer support
			//
			InitializeComponent();
		}

		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#region Windows Form Designer generated code

		private void InitializeComponent()
		{
            this.fadingListView = new PJControls.FadingListView();
            this.columnHeaderFirstname = new System.Windows.Forms.ColumnHeader();
            this.columnHeaderLastname = new System.Windows.Forms.ColumnHeader();
            this.columnHeaderAge = new System.Windows.Forms.ColumnHeader();
            this.buttonAdd = new System.Windows.Forms.Button();
            this.buttonDelete = new System.Windows.Forms.Button();
            this.buttonEdit = new System.Windows.Forms.Button();
            this.labelTag = new System.Windows.Forms.Label();
            this.textBoxTag = new System.Windows.Forms.TextBox();
            this.SuspendLayout();
            // 
            // fadingListView
            // 
            this.fadingListView.AddColor = System.Drawing.Color.Red;
            this.fadingListView.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.fadingListView.BackColor = System.Drawing.SystemColors.Window;
            this.fadingListView.ChangeColor = System.Drawing.Color.Green;
            this.fadingListView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
                                                                                             this.columnHeaderFirstname,
                                                                                             this.columnHeaderLastname,
                                                                                             this.columnHeaderAge});
            this.fadingListView.DeleteColor = System.Drawing.Color.Blue;
            this.fadingListView.FadingTime = 10;
            this.fadingListView.ForeColor = System.Drawing.SystemColors.WindowText;
            this.fadingListView.FullRowSelect = true;
            this.fadingListView.Location = new System.Drawing.Point(8, 8);
            this.fadingListView.MultiSelect = false;
            this.fadingListView.Name = "fadingListView";
            this.fadingListView.Size = new System.Drawing.Size(252, 208);
            this.fadingListView.Sorting = System.Windows.Forms.SortOrder.Ascending;
            this.fadingListView.TabIndex = 0;
            this.fadingListView.View = System.Windows.Forms.View.Details;
            this.fadingListView.SelectedIndexChanged += new System.EventHandler(this.ListView_SelectedIndexChanged);
            // 
            // columnHeaderFirstname
            // 
            this.columnHeaderFirstname.Text = "Firstname";
            this.columnHeaderFirstname.Width = 95;
            // 
            // columnHeaderLastname
            // 
            this.columnHeaderLastname.Text = "Lastname";
            this.columnHeaderLastname.Width = 93;
            // 
            // columnHeaderAge
            // 
            this.columnHeaderAge.Text = "Age";
            // 
            // buttonAdd
            // 
            this.buttonAdd.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.buttonAdd.Location = new System.Drawing.Point(8, 252);
            this.buttonAdd.Name = "buttonAdd";
            this.buttonAdd.TabIndex = 1;
            this.buttonAdd.Text = "Add";
            this.buttonAdd.Click += new System.EventHandler(this.buttonAdd_Click);
            // 
            // buttonDelete
            // 
            this.buttonDelete.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.buttonDelete.Enabled = false;
            this.buttonDelete.Location = new System.Drawing.Point(98, 252);
            this.buttonDelete.Name = "buttonDelete";
            this.buttonDelete.TabIndex = 2;
            this.buttonDelete.Text = "Delete";
            this.buttonDelete.Click += new System.EventHandler(this.buttonDelete_Click);
            // 
            // buttonEdit
            // 
            this.buttonEdit.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
            this.buttonEdit.Enabled = false;
            this.buttonEdit.Location = new System.Drawing.Point(188, 252);
            this.buttonEdit.Name = "buttonEdit";
            this.buttonEdit.TabIndex = 3;
            this.buttonEdit.Text = "Edit";
            this.buttonEdit.Click += new System.EventHandler(this.buttonEdit_Click);
            // 
            // labelTag
            // 
            this.labelTag.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
            this.labelTag.Location = new System.Drawing.Point(16, 224);
            this.labelTag.Name = "labelTag";
            this.labelTag.Size = new System.Drawing.Size(40, 16);
            this.labelTag.TabIndex = 4;
            this.labelTag.Text = "Tag:";
            // 
            // textBoxTag
            // 
            this.textBoxTag.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
                | System.Windows.Forms.AnchorStyles.Right)));
            this.textBoxTag.Location = new System.Drawing.Point(64, 222);
            this.textBoxTag.Name = "textBoxTag";
            this.textBoxTag.ReadOnly = true;
            this.textBoxTag.Size = new System.Drawing.Size(192, 20);
            this.textBoxTag.TabIndex = 5;
            this.textBoxTag.Text = "";
            // 
            // FormMain
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
            this.ClientSize = new System.Drawing.Size(272, 285);
            this.Controls.Add(this.textBoxTag);
            this.Controls.Add(this.labelTag);
            this.Controls.Add(this.buttonEdit);
            this.Controls.Add(this.buttonDelete);
            this.Controls.Add(this.buttonAdd);
            this.Controls.Add(this.fadingListView);
            this.MinimumSize = new System.Drawing.Size(280, 280);
            this.Name = "FormMain";
            this.Text = "Fading ListView Demo";
            this.ResumeLayout(false);

        }
		#endregion

		[STAThread]
		static void Main() 
		{
			Application.Run(new FormMain());
		}

        private string RandomString(int seed)
        {
            StringBuilder builder = new StringBuilder();

            Random random = new Random(seed);
            char ch;
            for (int i = 0; i < random.Next(10) + 5; i++)
            {
                if (i == 0)
                {
                    ch = Convert.ToChar(Convert.ToInt32(25 * random.NextDouble() + 65)) ;
                }
                else
                {
                    ch = Convert.ToChar(Convert.ToInt32(25 * random.NextDouble() + 97)) ;
                }
                builder.Append(ch);
            }

            return builder.ToString();
        }

        private void buttonAdd_Click(object sender, System.EventArgs e)
        {
            FormEnter form = new FormEnter();
            form.StartPosition = FormStartPosition.CenterParent;
            form.Text = "Add";

            Random random = new Random();
            form.Firstname = RandomString(unchecked((int)DateTime.Now.Ticks / 7));
            form.Lastname = RandomString(unchecked((int)DateTime.Now.Ticks / 5));
            form.Datatag = RandomString(unchecked((int)DateTime.Now.Ticks / 3));
            form.Age = random.Next(100);

            if (form.ShowDialog(this) == DialogResult.OK)
            {
                ListViewItem listViewItem = new ListViewItem(new string[]{form.Firstname, form.Lastname, form.Age.ToString()});

                fadingListView.AddItem(listViewItem);

                FadingListView.SetTag(listViewItem, form.Datatag);
            }
        }

        private void buttonDelete_Click(object sender, System.EventArgs e)
        {
            ListViewItem listViewItem = fadingListView.SelectedItems[0];
            fadingListView.DeleteItem(listViewItem);

            textBoxTag.Clear();
        }

        private void buttonEdit_Click(object sender, System.EventArgs e)
        {
            FormEnter form = new FormEnter();
            form.StartPosition = FormStartPosition.CenterParent;
            form.Text = "Edit";

            ListViewItem listViewItem = fadingListView.SelectedItems[0];
            form.Firstname = listViewItem.SubItems[0].Text;
            form.Lastname = listViewItem.SubItems[1].Text;
            form.Datatag = (string)FadingListView.GetTag(listViewItem);
            form.Age = int.Parse(listViewItem.SubItems[2].Text);

            if (form.ShowDialog(this) == DialogResult.OK)
            {
                listViewItem.SubItems[0].Text = form.Firstname;
                listViewItem.SubItems[1].Text = form.Lastname;
                listViewItem.SubItems[2].Text = form.Age.ToString();
                FadingListView.SetTag(listViewItem, form.Datatag);

                fadingListView.ChangeItem(listViewItem);

                textBoxTag.Text = form.Datatag;
            }
        }

        private void ListView_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            buttonDelete.Enabled = fadingListView.SelectedIndices.Count == 1;
            buttonEdit.Enabled = fadingListView.SelectedIndices.Count == 1;

            if (fadingListView.SelectedIndices.Count == 1)
            {
                textBoxTag.Text = (string)FadingListView.GetTag(fadingListView.SelectedItems[0]);
            }
        }
	}
}

⌨️ 快捷键说明

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