ppsGrid Class Library
OutlineColor Property
NamespacesppsGridGridCellOutlineColor
ppsGrid (c] 2004-2007 by Torsten Oberprieler
Ruft die Farbe ab, mit der die Linien für die Strukturansicht in der Zelle gezeichnet werden, oder legt diese fest.
Declaration Syntax
C#Visual BasicVisual C++
public Color OutlineColor{ get; set;}
Public Property OutlineColor As Color
public:
property Color OutlineColor {
	Color get ();
	void set (Color value);
}
Value
Eine Color, mit der die Linien der Strukturansicht in der Zelle gezeichnet werden. Der Standardwert ist der Wert Empty.
Remarks
Diese Eigenschaft ist ambient. Die Berechnung der Linienfarbe wird durch die Objekte Grid, GridRow, GridCol und GridCell wie folgt bestimmt:

Priorität, Objekt, EigenschaftBeschreibung
Höchste Priorität
GridCell.OutlineColor
Hat die Linienfarbe der Strukturansicht einen Wert ungleich Empty, wird in jedem Fall diese Farbe benutzt.
Hohe Priorität
GridRow.OutlineColor
Hat die OutlineColor einen Wert ungleich Color.Empty, wird diese Farbe benutzt, wenn die Linienfarbe der Strukturansicht den Wert Color.Empty hat.
Mittlere Priorität
GridCol.OutlineColor
Hat die OutlineColor einen Wert ungleich Color.Empty, wird diese Farbe benutzt, wenn die Linienfarbe der Strukturansicht und die Linienfarbe der Strukturansicht der Zeile den Wert Color.Empty haben.
Niedrigste Priorität
Grid.OutlineColor
Hat die OutlineColor einen Wert ungleich Color.Empty, wird diese Farbe benutzt, wenn die Linienfarbe der Strukturansicht, die Linienfarbe der Strukturansicht der Zeile und die Linienfarbe der Strukturansicht der Spalte den Wert Color.Empty haben.


Examples
Beispiel 1:
CopyC#
grid.AddCols(1);                                // nur eine Spalte..
grid.Cols[0].Width = 120;                       // ..etwas breiter
grid.Cols[0].Outline = true;                    // ..Treeview/Outline/Struktur..

grid.AddRows(1);                                // nur eine Zeile..
grid.Rows[0].Outline.AddChilds(2);              // ..hat aber zwei "Kinder"
grid.Rows[2].Outline.AddChilds(2);              // ....die wiederum jeweils..
grid.Rows[1].Outline.AddChilds(2);              // ....zwei "Kinder" haben

grid.OutlineColor = Color.Black;                // Linien in schwarz (default)
grid.Cols[0].OutlineColor = Color.Red;          // ..in rot

foreach(GridRow r in grid.Rows)                 // alle..
  r[0].Value = "zelle"+r.Row;                   // ..Zellen: etwas anzeigen

grid[0,1].OutlineColor = Color.Blue;            // Linienfarbe des TreeView's
grid[0,2].OutlineColor = Color.Aquamarine;      // ..setzen
grid[0,3].OutlineColor = Color.CadetBlue;       // ..

grid[0,4].OutlineColor = Color.Yellow; 
grid[0,5].OutlineColor = Color.Gold;
grid[0,6].OutlineColor = Color.Green;

Die Linienfarbe der Outlinestruktur wird im Beispiel direkt von den Zellen gesetzt, weshalb die Farben des Grids und der Spalte keine Bedeutung haben. Erst, wenn Sie die Farbzuweisung auskommentieren, werden die Linien in rot(Spalte) oder schwarz (Grid) gezeichnet.


Beispiel 2:
CopyC#
Random  rnd=new Random();
int     y;
GridRow    row;

grid.Scrollbar = eScrollbar.Both;                                // ohne Bildlaufleisten
grid.SelectionType = eSelectionType.None;                        // ohne Markieren
grid.AddCols(5);                                                 // 5 Spalten einfügen
grid.AddRows(10);                                                // ..und (vorerst) 10 Zeilen

grid.Rows[0].Fixed = true;                                       // erste Zeile..
grid.Cols[0].Fixed = true;                                       // ..und erste Spalte fixiert
grid.Cols[1].Outline = true;                                     // zweite Spalte mit +/- (Outline)

y = grid.FixedRowCount;                                          // *** TreeView erzeugen
while(y<grid.Rows.Count){                                        // alle Zeilen
  row = grid.Rows[y];                                            // ..neue "Kinder" ?
  if(rnd.Next(6) > row.Outline.Level)                            // ..Ebene(Level) nicht zu hoch ?
    row.Outline.AddChilds(rnd.Next(6)+2);                        // ...."Kinder" erzeugen
  y++;                                                           // ..nächste Zeile
}

for(int rw=grid.FixedRowCount; rw<grid.Rows.Count; rw++){        // ..alle zeilen
  for(int cl=grid.FixedColCount; cl<grid.Cols.Count; cl++){      // alle Spalten
    int r = rnd.Next(255), g = rnd.Next(255), b = rnd.Next(255); // ....Zufallfarbe
    grid[cl,rw].OutlineColor = Color.FromArgb(r,g,b);            // ....Farbe für Strukturlinien
    grid[cl,rw].Value = "Cell:"+cl+"/"+rw;
  }
}

Das zweite Beispiel zeigt den Zugriff auf die Eigenschaft OutlineColor mittels zweier Schleifen. Die Farbe wird durch drei Zufallszahlen erzeugt. Die "TreeView" wird per Zufall erzeugt.
See Also

Assembly: ppsGrid (Module: ppsGrid) Version: 1.3.4.0