Announcement

Collapse
No announcement yet.

ListBox Ansicht

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

  • ListBox Ansicht

    Hallo leute!<BR>Ich habe ein problem mit der Ausgabe meiner Daten aus einer Datenbank in die ListBox.<BR>In der Ansicht steht statt des Datensatzes der Ausdruck: System.Data.DataRowView<BR>Was heißt das denn und wie behebe ich das Problem?<BR>Soviel ich weiß sind diese Ausdrücke aber mit dem richtigen Datensatz hinterlegt.<BR>Wäre echt lieb wenn ihr mir helfen könntet!

  • #2
    Hallo,

    angenommen, eine Windows Forms-Anwendung wird mit VS.NET entwickelt. Dann sind die folgenden Arbeitsschritte notwendig (ich beziehe ich dabei auf die Tabelle <i>Region</i> der MS SQL Server-Beispieldatenbank <i>Northwind</i>):

    1. Server Explorer: Tabelle <i>Region</i> auf das Formular ziehen, VS .NET legt die beiden Komponenten SqlConnection und SqlDataAdapter automatisch im Component Tray ab.

    2. Rechter Mausklick auf SqlDataAdapter: Generate Dataset.., VS .NET legt die Komponente DataSet1 automatisch im Component Tray ab.

    3. Listbox von der Toolbox auf das Formular ziehen.

    4. Listbox mit der Maus anklicken und im Properties-Editor konfigurieren: <br>
    a) Listbox-Eigenschaft <b>DataSource</b> konfigurieren: DataSet und DataTable aus der Liste auswählen <br>
    b) Listbox-Eigenschaft <b>DisplayMember</b> konfigurieren: Anzuzeigende Spalte aus der Liste auswählen.

    5. SqlDataAdapter1.Fill(DataSet1) aufrufen - die Daten werden angezeigt.

    Wenn es sich um eine ASP.NET Web Form-Anwendung handelt, ist eine etwas andere Vorgehensweise notwendig:

    <pre>

    Private Sub DoLoadData()
    Dim aDR As System.Data.SqlClient.SqlDataReader
    Me.SqlConnection1.Open()
    Try
    aDR = Me.SqlCommand1.ExecuteReader()
    With Me.ListBox1
    .DataSource = aDR
    .DataTextField = "CustomerID"
    .DataBind()
    End With
    Finally
    aDR.Close()
    Me.SqlConnection1.Close()
    End Try
    End Sub

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    'Put user code to initialize the page here
    If Not Page.IsPostBack Then
    DoLoadData()
    End If
    End Sub

    </pre&gt

    Comment

    Working...
    X