Announcement

Collapse
No announcement yet.

Tabellenstruktur

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

  • Tabellenstruktur

    Hallo zusammen,

    ich möchte gerne Werte aus einer Tabelle in einem Formular anzeigen. Jetzt hat der Benutzer die Möglichkeit, ein Select selber abzusetzten. Mit eine DataGrid möchte ich nicht arbeiten. Als erstes muss ich also den TableHeader lesen und darstellen (Columns). Wie stellt man das an ?

    Gruß

    Sascha

  • #2
    Hallo,
    die Spalten der Tabelle können über die <b>Columns</b>-Kollektion der DataTable ermittelt werden. Das folgende Beispiel zeigt, wie die DataTable-Datensätze in einem ListView-Control angezeigt werden:
    <code>
    <font color="#008000">//neue DataTable erzeugen</font>
    <font color="#008080">DataTable</font> aNewDataTable = <font color="#0000FF">new</font> <font color="#008080">DataTable</font>();
    aNewDataTable.<font color="#008080">Columns</font>.Add("Nachname", <font color="#0000FF">typeof</font>(<font color="#008080">String</font>));
    aNewDataTable.<font color="#008080">Columns</font>.Add("Vorname", <font color="#0000FF">typeof</font>(<font color="#008080">String</font>));
    aNewDataTable.<font color="#008080">Columns</font>.Add("Alter", <font color="#0000FF">typeof</font>(<font color="#008080">Int32</font>));
    <font color="#008000">// Primärschlüssel</font>
    aNewDataTable.PrimaryKey = <font color="#0000FF">new</font> <font color="#008080">DataColumn</font>[] {aNewDataTable.<font color="#008080">Columns</font>[0],aNewDataTable.<font color="#008080">Columns</font>[1]};
    aNewDataTable.MinimumCapacity = 10;
    <font color="#008000">// Datensätze eintragen </font>
    aNewDataTable.Rows.Add(<font color="#0000FF">new</font> <font color="#008080">Object</font>[] {"Kosch", "Andreas", 42});
    aNewDataTable.Rows.Add(<font color="#0000FF">new</font> <font color="#008080">Object</font>[] {"Mustermann", "Manfred", 50});
    aNewDataTable.Rows.Add(<font color="#0000FF">new</font> <font color="#008080">Object</font>[] {"Ritz", "Bernd", 45});
    <font color="#008000">// Ergebnis anzeigen</font>
    dataGrid1.DataSource = aNewDataTable;
    <font color="#008000">// Daten ebenfalls im ListView anzeigen</font>
    listView1.<font color="#008080">View</font> = <font color="#008080">View</font>.Details;
    <font color="#0000FF">for</font> (<font color="#0000FF">int</font> i = 0; i &lt;= aNewDataTable.<font color="#008080">Columns</font>.Count -1; i++)
    {
    listView1.<font color="#008080">Columns</font>.Add(aNewDataTable.<font color="#008080">Columns</font>[i].ToString(),100,<font color="#008080">HorizontalAlignment</font>.Center);
    }
    listView1.BeginUpdate();
    <font color="#008080">ListViewItem</font> aLVI;
    <font color="#0000FF">foreach</font> (<font color="#008080">DataRow</font> aRow <font color="#0000FF">in</font> aNewDataTable.Rows)
    {
    aLVI = <font color="#0000FF">new</font> <font color="#008080">ListViewItem</font>(aRow[0].ToString());
    aLVI.SubItems.Add(aRow[1].ToString());
    aLVI.SubItems.Add(aRow[2].ToString());
    listView1.Items.Add(aLVI);
    }
    listView1.EndUpdate();
    </code&gt

    Comment

    Working...
    X