示例#1
0
 private void OnDrawingItem(WSNAutoCompleteListBoxDrawingItemEventArgs e)
 {
     if (DrawingItem != null)
     {
         DrawingItem(this, e);
     }
 }
 private void OnDrawingItem(WSNAutoCompleteListBoxDrawingItemEventArgs e)
 {
     if (DrawingItem != null)
     {
         DrawingItem(this, e);
         
     }
    
 }
示例#3
0
            protected override void OnDrawItem(DrawItemEventArgs e)
            {
                base.OnDrawItem(e);
                if (Items.Count <= 0)
                {
                    return;
                }

                if (e.Index != -1)
                {
                    Color bColor = e.BackColor;

                    if ((e.State & DrawItemState.Selected)
                        == DrawItemState.Selected)
                    {
                        e.Graphics.FillRectangle(new SolidBrush(SelectBackColor), e.Bounds);
                    }
                    else
                    {
                        Color backColor;
                        backColor = Color.White;
                        using (SolidBrush brush = new SolidBrush(Color.White))
                        {
                            e.Graphics.FillRectangle(brush, e.Bounds);
                        }
                    }
                    #region 设置显示Text

                    //提供一个委托接口,让外面改变显示的文本
                    WSNAutoCompleteListBoxDrawingItemEventArgs drawingItemEventArgs = new WSNAutoCompleteListBoxDrawingItemEventArgs(GetItemText(Items[e.Index]), Items[e.Index]);
                    OnDrawingItem(drawingItemEventArgs);

                    #endregion



                    TextFormatFlags formatFlags = TextFormatFlags.VerticalCenter;
                    if (RightToLeft == RightToLeft.Yes)
                    {
                        formatFlags |= TextFormatFlags.RightToLeft;
                    }
                    else
                    {
                        formatFlags |= TextFormatFlags.Left;
                    }

                    TextRenderer.DrawText(
                        e.Graphics,
                        drawingItemEventArgs.Text,
                        Font,
                        new Rectangle((e.Bounds.Width > 5) ? (e.Bounds.X + 5) : (e.Bounds.X), e.Bounds.Y, e.Bounds.Width, e.Bounds.Height),
                        ForeColor,
                        formatFlags);
                }
            }
            protected override void OnDrawItem(DrawItemEventArgs e)
            {
                base.OnDrawItem(e);
                if (Items.Count <= 0)
                    return;

                if (e.Index != -1)
                {

                    Color bColor = e.BackColor;

                    if ((e.State & DrawItemState.Selected)
                        == DrawItemState.Selected)
                    {
                        e.Graphics.FillRectangle(new SolidBrush(SelectBackColor), e.Bounds);
                    }
                    else
                    {
                        Color backColor;
                        backColor = Color.White;
                        using (SolidBrush brush = new SolidBrush(Color.White))
                        {
                            e.Graphics.FillRectangle(brush, e.Bounds);
                        }
                    }
                    #region 设置显示Text
                    
                    //提供一个委托接口,让外面改变显示的文本
                    WSNAutoCompleteListBoxDrawingItemEventArgs drawingItemEventArgs = new WSNAutoCompleteListBoxDrawingItemEventArgs(GetItemText(Items[e.Index]), Items[e.Index]);
                    OnDrawingItem(drawingItemEventArgs);
                    
                    #endregion



                    TextFormatFlags formatFlags = TextFormatFlags.VerticalCenter;
                    if (RightToLeft == RightToLeft.Yes)
                    {
                        formatFlags |= TextFormatFlags.RightToLeft;
                    }
                    else
                    {
                        formatFlags |= TextFormatFlags.Left;
                    }

                    TextRenderer.DrawText(
                        e.Graphics,
                        drawingItemEventArgs.Text,
                        Font,
                        new Rectangle((e.Bounds.Width > 5) ? (e.Bounds.X + 5) : (e.Bounds.X), e.Bounds.Y, e.Bounds.Width, e.Bounds.Height),
                        ForeColor,
                        formatFlags);
                }
            }