2009-06-15 8 views
1

Ich muss den Rahmen einzelner Zellen in einem WinForms DataGridView programmgesteuert ändern. Als ich auf dem Netz suchte, fand ich diesen Link (http://bytes.com/groups/net-vb/501128-changing-datagridview-cell-borders-runtime), der dasselbe ist, was ich versuche zu tun; jedoch gibt es kein Codebeispiel gibt die Lösung, das istProgrammgesteuert Ändern einzelner Zellenränder in einem WinForms DataGridView

„Sie sind also von der Datagrid Klasse erben können und überschreibt AdjustCellBorderStyle Methode eine angepasste Version von Datagrid zu bekommen. Dann können Sie diese maßgeschneiderten verwenden Datagrid in Ihrem Datagridview . Hinweis:. in Ihrer individuellen Datagrid, sollten Sie ein DataGridViewAdvancedBorderStyle öffentliches Mitglied zu, so dass Datagridview-Code kann diese Mitglied Grenze Stil Informationen an der Zelle gesetzt Dann in der AdjustCellBorderStyle Implementierung, sollten Sie die dies überprüfen DataGridViewAdvancedBorderStyle publi c Mitglied und Rückgabe entsprechend DataGridViewAdvancedBorderStyle. Dann DataGridView PaintCells kann es zu malen Sie Ihre Zelle. ".

Ich habe eine harte Zeit zu verstehen, die Implementierung dieser Lösung. Könnte jemand bitte übersetzen die oben in VB.Net Code arbeiten und bieten ein Beispiel für den Aufruf zu ändern einer einzelne Zelle Grenzen?

Antwort

1

Hier ein fertiges Beispiel ist die tut, was Sie brauchen, nur unter der zusätzlichen Funktionalität versteckt von der Hintergrundfarbe einstellen.

http://www.codeproject.com/KB/grid/hulihui_CustomDataGridVie.aspx

Blick für die Linien

In dieser Zeile wird ein Zellenrahmen gezeichnet. Um also den Rand einer einzelnen Zelle zu ändern, müssen die Ereignisargumente (CellBackColorEventArgs-Klasse) alle Eigenschaften enthalten, die den Rahmen beschreiben sollen. Zeichnen Sie dann in der DrawCellBackColor-Methode den Rahmen basierend auf diesen übergebenen Eigenschaften (und was auch immer Sie in der Zelle zeichnen möchten)

+0

Es dauerte ein wenig Arbeit, aber ich war in der Lage, den Code in der Verknüpfung wie ich zu verhalten gewollt. Vielen Dank! – OneSource

Verwandte Themen