ppsGrid Class Library
OutlineMode Property
NamespacesppsGridGridColOutlineMode
ppsGrid (c] 2004-2007 by Torsten Oberprieler
Ruft die Identifizierung der Spalte als Strukturknoten (Outline/Treeview) ab, oder legt dieses fest.
Declaration Syntax
C#Visual BasicVisual C++
public bool OutlineMode{ get; set;}
Public Property OutlineMode As Boolean
public:
property bool OutlineMode {
	bool get ();
	void set (bool value);
}
Value
true, wenn in der Spalte die Anzeige von Strukturknoten aktiviert ist, ansonsten false.
Remarks
Jede Spalte im Steuerelement kann zur Anzeige der Strukturknoten (Outline, Treeview) dienen. Die Darstellung der Zellen der Spalte zeichnet zusätzlich eine Rechteck (OutlineRect) mit der Information, ob die untergeordnete Zeilen existieren, offen und/oder geschlossen sind.
Beachten Sie bitte, daß die Eigenschaft OutlineMode nur das Zeichnen und die Bedienbarkeit der Strukturelemente aktiviert. Das Einfügen, Traversieren, Löschen usw. der Strukturelemente liegt im Aufgabenbereich der Klasse GridOutlineCol. Das untenstehende zeigt das Beispiel aus der Eigenschaft CloseChild()(). Der einzige Unterschied ist, daß die Eigenschaft OutlineMode der Klasse GridCol auskommentiert wurde. Dadurch werden die Bedienungselemente (OutlineRect, Strukturlinien) nicht gezeichnet. Ein Mausklick auf die Zelle öffnet und schließt aber die untergeodneten Zellen wie gewohnt.

Weitere Informationen und Beispiele finden Sie unter GridOutlineCol.
Examples
CopyC#
GridRow row;
Random  rnd = new Random();                     // Zufallsgenerator
int     y = 1;

grid.AddCols(1);                                // eine Zeile
grid.Cols[0].Width = 200;                       // Spaltenbreite
grid.AddRows(10);                               // starten mit 10 Zeilen
grid.Rows[0].Fixed = true;                      // Spaltenkopf
// grid.Cols[0].Outline = true;                 // Auskommentiert: Strukturelemente

while(y<grid.Rows.Count){                       // bis zur letzten Zeile
  row = grid.Rows[y];                           // ..Zeile..
  if(rnd.Next(12) > 4+row.Outline.Level)        // ..per Zufall: ...
    row.Outline.AddChilds(rnd.Next(4)+1);       // ....neue "Childs" anhängen
  row[0].Value = "Zeile "+row.Row;              // ..Zeilennummer anzeigen
  if(row.Outline.HasChild)                      // ..Zeilen mit "Childs"
    row.BackColorCell = Color.Yellow;           // ....haben gelben Hintergrund
  y++;                                          // ..nächste Zeile
}

private void grid_CellClick(object sender, ppsGrid.CellClickEventArgs e) {
  GridRow row=grid.Rows[e.Row];                 // geklickte Zeile
  if(row.Outline.IsOpen)                        // Zeile offen ?
    row.Outline.CloseChild();                   // ..schließen
  else                                          // nein..
    row.Outline.OpenChild();                    // ..öffnen
}

Assembly: ppsGrid (Module: ppsGrid) Version: 1.3.4.0