Anmelden

Grids

Der ViewState-Traffic von GridView kann enorm groß werden. Anders ist dies bei eingebeteten Grids oder bei Verwendung des Bearbeitungsmodus. 

Ohne ViewState:

Ein Abschalten ist in vielen Fällen möglich und sinnvoll. Weil Grids bei PostBack im Regelfall die Daten neu laden, würden durch den ViewState kaum Datenbankabfragen eingespart werden. Bei Abschalten ist folgendes zu beachten:

  • beim Sorting geht das Paging verloren, das ist nicht so schlimm, da ein Zurücksetzen des Paging sowieso sinnvoll ist.
  • beim Paging gehen SortDirection/Expression nicht verloren, nur der CSS-Sorting-Marker muss bei jedem Postback erstellt werden (PreRender)
  • Beim ersten Laden SortExpression initialisieren.
  • Reset() erforderlich: beim Klicken des SuchButtons PageIndex auf 0 setzen
  • ACHTUNG: bei Grids, die im Inspektor nicht unmittelbar sichtbar sind  muss bei eingeschalteten Paging TotalRowCount=0 gesetzt werden (in Page_Load) ansonsten Fehler in DataSource.

GridState Pattern (Gridbase)

Page_Load

protected void Page_Load(object sender, EventArgs e)
{
ObjectContainerDataSource1.TotalRowCount = 0;
ObjectContainerDataSource1.DataSource = null;
iasSaleOrderControl = SecurityHelper.IsAuthorized(SupplierOrderRelation.SaleOrderControl, false);
// GridState Pattern
Label = ML("Bestellung(en)");
SupplierInfoKey = "ccontent17415"; //ML("ccontent17415"); comment is for ML scan
CustomerInfoKey = "ccontent17837"; //ML("ccontent17837"); comment is for ML scan
DefaultSortExpression = "OrderDate";
DefaultSortDirection = SortDirection.Descending;
RestoreState(GridView1);
}

GridView1_Sorted

protected void GridView1_Sorted(object sender, EventArgs e)

{

//SetCssClasses(GridView1);

SetSorting(GridView1);

}

   
Top

Wir arbeiten mit Software von http://www.campus21.de.

Verantwortlich für angezeigte Daten ist der Webdomain-Eigentümer laut Impressum.

Suche