2012-12-07 189 views

回答

-3

除非創建派生數據網格視圖,否則無法更改單個單元格邊框樣式。

+5

不正確,這可以通過自定義的DataGridView來完成。有一個在Microsoft網站上:http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewadvancedborderstyle.aspx –

+3

這是錯誤的,你可以簡單地覆蓋單元格的繪製方法 – Edmondo1984

9

您可以繪製一個矩形。在這個例子中,我在選定的單元上放置了一個紅色的Boder。

private void dataGridView_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) 
{ 
    if (e.RowIndex >= 0 && e.ColumnIndex >= 0) 
    { 
     if (dataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected == true) 
     { 
      e.Paint(e.CellBounds, DataGridViewPaintParts.All & ~DataGridViewPaintParts.Border); 
      using (Pen p = new Pen(Color.Red, 1)) 
      { 
       Rectangle rect = e.CellBounds; 
       rect.Width -= 2; 
       rect.Height -= 2; 
       e.Graphics.DrawRectangle(p, rect); 
      } 
      e.Handled = true; 
     } 
    } 
} 
+0

這示例僅在單元格被選中時才起作用。如果我需要創建幾個矩形? – Doro

+0

@doro你可以只改變條件︰selected == true –

+0

我只是試過,但沒有奏效。 – Doro

相關問題