Announcement

Collapse
No announcement yet.

Tabellensortierung funktioniert nicht mehr

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tabellensortierung funktioniert nicht mehr

    Hallo,<br><br>

    in einer Tabelle habe ich 3 Textspalten, nach denen jeweils sortiert werden kann, in dem der Benutzer 2 x auf den Spaltenheader klickt. Das funktioniert, in dem man "AllowSorting" des zugehörigen DataGridTableStyle auf true setzt.<br>
    Durch den Umstieg von Framework Version 1.0 auf 1.1 funktioniert das nun nicht mehr. Das DataGrid sortiert lediglich nach der ersten Textspalte. Man kann zwar das Sortieren auch durch Anklicken der anderen Spaltenheader anstoßen, die Sortierreihenfolge richtet sich aber immer nach der ersten Spalte.<br>
    Kann mir jemand helfen, wie ich die Sortierung wieder zum Laufen bekomme?<br><br>

    Dankeschön im Voraus,
    Grüße,
    Yvonne

  • #2
    Hallo,

    ich kann das Problem mit VS.NET 2003 nicht reproduzieren. Bei der folgenden Umsetzung ist das Sortieren möglich:
    <br><br>
    Schritt 1: Testdaten
    <pre>
    <b>USE</b> tempdb
    <b>GO</b>
    <br>
    <b>CREATE</b> <b>TABLE</b> SortDemo
    (
    recid <b>INTEGER</b> <b>NOT</b> <b>NULL</b> <b>IDENTITY</b> <b>PRIMARY</b> <b>KEY</b>,
    wert1 <b>VARCHAR</b>(9) <b>NOT</b> <b>NULL</b>,
    wert2 <b>INTEGER</b> <b>NOT</b> <b>NULL</b>
    )
    <b>GO</b>
    <b>INSERT</b> <b>INTO</b> SortDemo (wert1,wert2) <b>VALUES</b> (<font color="#9933CC">'C'</font>, 4)
    <b>INSERT</b> <b>INTO</b> SortDemo (wert1,wert2) <b>VALUES</b> (<font color="#9933CC">'B'</font>, 3)
    <b>INSERT</b> <b>INTO</b> SortDemo (wert1,wert2) <b>VALUES</b> (<font color="#9933CC">'A'</font>, 2)
    <b>INSERT</b> <b>INTO</b> SortDemo (wert1,wert2) <b>VALUES</b> (<font color="#9933CC">'D'</font>, 1)
    <b>GO</b>
    </pre>
    Schritt 2: SqlConnection/SqlDataAdapter konfigurieren, typisiertes DataSet anlegen
    <br><br>
    Schritt 3: DataGrid über DataSource und DataMember mit dem DataSet verbinden (Eigenschaft <i>AllowSorting</i> wird nicht geändert).
    <br><br>
    Schritt 4: Programm starten, SqlDataAdapter-Methode Fill aufrufen: Die Sortierung im DataGrid kann durch Mausklick auf die Spalten-Header umgeschaltet werden (siehe angehängte Abbildung). Das Verhalten ändert sich auch nicht, wenn ich dem DataGrid nachträglich eine eigene TableStyle verpasse

    Comment


    • #3
      Hallo,<br><br>
      mittlerweile habe ich herausgefunden, woran der Fehler liegt, habe leider aber noch keine Lösung.<br>
      Statt einfachen Datentypen wie string, integer verwende ich in der Tabelle Objekte vom selbstgebauten Datentyp "TableCellText".<br>
      Für die korrekte Sortierung habe ich die Methode "ToString()" überschrieben. Aber es scheint, als ob diese Methode bei der Sortierung im Framework 1.1 nicht mehr aufgerufen wird.<br><br>

      Grüße, Yvonn

      Comment

      Working...
      X