Hinzufügen von zusätzlichen Spalten im Grid

grid
designer
scripting

#1

Einem Grid können zusätzliche Spalten hinzugefügt werden.
Diese Werte können entweder aus anderen Spalteninhalten berechnet, oder aus anderen Datenquellen hinzugefügt werden.

Beispiel: Das Feld Name wird aus den Feldern NAME1 und NAME2 zusammengesetzt.

CustomDraw

Um ein Feld hinzuzufügen verwenden Sie am besten den Grid-Assistenten.
Nach dem Hinzufügen müssen Sie noch folgende Eigenschaften setzen:

  • FieldName (muss eindeutig sein)
  • UnboundColumnType (den Typ setzen, muss ungleich “Bound” sein)

Den Inhalt des Feldes können Sie entweder als einfachen Ausdruck definieren, oder Sie verwenden das Ereignis CustomUnboundColumnData.

Setzen des Feldinhalts mittels Ausdruck

Sie können den Feldinhalt mittels eines Ausdrucks definieren. Dieser muss in der Eigenschaft “UnboundExpression” hinterlegt werden.
Feldnamen müssen von einer eckigen Klammer umgeben sein, Texte mit einem einfachen Hochkomma.


weitere Informationen

Setzen des Feldinhalts mittels Ereignis

Das selbe Ergebnis erreicht man mit folgendem Code im Ereignis CustomUnboundColumnData.

var ev = e as DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs;
var view = sender as DevExpress.XtraGrid.Views.Grid.GridView;
if (view == null || ev == null) return;
if (ev.Column.FieldName == "Unbound1")
{
  if (ev.IsGetData)
  {
    ev.Value = view.GetListSourceRowCellValue(ev.ListSourceRowIndex, "NAME1") + " " +
    view.GetListSourceRowCellValue(ev.ListSourceRowIndex, "NAME2");
  }
}

Weitere Informationen


unlisted #2

listed #3