2012-04-07 10 views
1

リストボックスの各項目を水平線で区切りたいと考えています。ListBoxItemsの間に線を描画するには

これは、アイテムを描画するための私のコードの一部です。

private void symptomsList_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e) 
    { 
     bool selected = ((e.State & DrawItemState.Selected) == DrawItemState.Selected); 
     int index = e.Index; 
     Graphics g = e.Graphics; 
     Color color; 
     if (selected == true) 
     { 
      color = Color.Red; 
     } 
     else 
     { 
      color = Color.Pink; 
     } 
     /* Draw Background */ 
     g.FillRectangle(new SolidBrush(color), e.Bounds); 

     /* Draw Item Text */ 
     g.DrawString(symptomsList.Items[e.Index].ToString(), e.Font, new SolidBrush(Color.Black), e.Bounds, StringFormat.GenericDefault); 

     e.DrawFocusRectangle(); 
    } 

答えて

2

FillRectangle(...)使用この後:

Color borderColor = Color.Black; 
g.DrawRectangle(new Pen(borderColor), e.Bounds); 
関連する問題