Exemple #1
0
        private void MainPictureBox_ImageSelected(object sender, MyControls.ImageArgs e)
        {
            if (e == null || e.Control == null || e.Control.Tag == null)
            {
                return;
            }

            PictureBox picBox  = e.Control as PictureBox;
            ImageItem  imgItem = e.Control.Tag as ImageItem;

            if (imgItem == null)
            {
                return;
            }

            Global.ProjectSaved = false;
            ReWriteTitle();

            switch (e.Action)
            {
            case OperationAction.Selected:
            {
                if (e.Control != null && e.Control.Tag != null)
                {
                    this.propertyGrid1.SelectedObject = e.Control.Tag;
                    //int index = listView1.Items.IndexOfKey(imgItem.Id.ToString());
                    //listView1.Items[index].Selected = true;
                }
                break;
            }

            case OperationAction.Removed:
            {
                this.propertyGrid1.SelectedObject = null;
                listView1.Items.RemoveByKey(imgItem.Id.ToString());
                break;
            }

            case OperationAction.EditTag:
            {
                ListViewItem[] lvis = listView1.Items.Find(imgItem.Id.ToString(), true);
                if (lvis.Length > 0)
                {
                    foreach (ListViewItem lvi in lvis)
                    {
                        lvi.Text = imgItem.ClassName;
                    }
                }
                break;
            }

            case OperationAction.Added:
            {
                ListViewItem lvi = new ListViewItem();
                lvi.Group       = _defaultGroup;
                lvi.ToolTipText = imgItem.ClassName;
                lvi.Text        = imgItem.ClassName;
                lvi.Name        = imgItem.Id.ToString();
                lvi.ImageIndex  = imgItem.ImageType.ImageIndex;
                lvi.Tag         = imgItem;
                listView1.Items.Add(lvi);
                break;
            }
            }
        }
 /// <summary>
 /// 图片发生变化
 /// </summary>
 /// <param name="s"></param>
 private void ImageChange(ImageArgs s)
 {
     ImageChanged?.Invoke(this, s);
 }