Example #1
0
        protected override void OnDrawItem(DrawItemEventArgs e)
        {
            this.DrawMode   = DrawMode.OwnerDrawFixed;
            this.ItemHeight = 22;
            e.DrawBackground();
            e.DrawFocusRectangle();
            Brush myBrush = Brushes.Black;

            if (e.Index > -1 && e.Index < this.cItem.Count)
            {
                CListBoxItem item = CItem[e.Index];
                item.Location = e.Bounds;
                item.Paint(e.Graphics);
            }
        }
Example #2
0
        private void clbField_MouseDown(object sender, MouseEventArgs e)
        {
            CurrTable = this;
            if (e.Button == MouseButtons.Right && clbField.SelectedIndex >= 1)
            {
                if (clbField.Items[clbField.SelectedIndex].ToString().Contains(seqStr))
                {
                    tsmiSeq.Checked = true;
                }
                else
                {
                    tsmiSeq.Checked = false;
                }
                cmsField.Show(clbField, e.Location);
            }
            else
            {
                int idx = clbField.IndexFromPoint(e.Location);
                if (idx > -1 && idx < clbField.Items.Count)
                {
                    CListBoxItem item    = clbField.CItem[idx];
                    bool         isCheck = item.isCheck(e.Location);
                    if (isCheck)
                    {
                        item.IsSelected = !item.IsSelected;
                        if (idx == 0)
                        {
                            for (int i = 1; i < clbField.Items.Count; i++)
                            {
                                CListBoxItem it = clbField.CItem[i];

                                it.IsSelected = item.IsSelected;
                            }
                        }
                    }
                    clbField.Invalidate();
                }

                int index = ((ListBox)sender).IndexFromPoint(e.X, e.Y);

                if (index >= 1)
                {
                    var p = this.Parent.PointToClient(PointToScreen(new Point(e.X, e.Y + 28)));
                    ((ListBox)sender).DoDragDrop(new object[] { this, index, p.X, p.Y }, DragDropEffects.Link);
                }
            }
        }