vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
Access -> Dataset -> Image-Spalte im Datagrid 
Autor: Chr!ss
Datum: 02.01.09 18:58

Hallo zusammen,

stehe gerade vor einem Problem, das gerade für mich nicht lösbar ist.
Folgende Situation:

Ich habe eine Access DB namens "Daten" u.a. mit folgenden Feldern:
ID         Autowert, Primärschlüssel
Icon       Text
Interpret  Text
Titel      Text
...
In der Tabelle sind Songs gespeichert. Im Feld Icon steckt ein Pfad zum jeweiligen Icon, also z.B. "I:\icon.png"
Ich möchte die Daten in meinem Formular in einem Datagridview anzeigen lassen. Folgender Code hierzu.

Dim conn As OleDbConnection
 
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
  System.EventArgs) Handles MyBase.Load
        Dim connstring As String
 
        connstring = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=C:\Dokumente und Einstellungen\Christian\Eigene" & _
            "Dateien\Visual Studio" & _
            "2005\Projects\Datenbankzugriff\Datenbankzugriff\Daten.mdb"
 
        conn = New OleDbConnection(connstring)
    End Sub
 
Sub ShowDataInDatagrid()
        Try
            conn.Open()
        Catch ex As Exception
            MessageBox.Show(ex.Message, _
                "Beim Öffnen der Datenbank ist ein Fehler aufgetreten.")
        End Try
 
        ' SelectCommand erstellen welches die "Select-Abfrage" gegen die
        ' Datenbank beinhaltet
        Dim myOleDbSelectCommand As New OleDb.OleDbCommand
        myOleDbSelectCommand.Connection = conn
        myOleDbSelectCommand.CommandText = "select ID , Icon, Titelname," & _
          "Interpret From Daten"
 
        ' DataAdapter mit dem SelectCommand verbinden
        Dim myOleDbDataAdapter As New OleDb.OleDbDataAdapter
        myOleDbDataAdapter.SelectCommand = myOleDbSelectCommand
 
        ' und mit dem DataAdapter das DataSet füllen
        Dim myDataSet As New DataSet
 
        'myDataSet.Tables
        myOleDbDataAdapter.Fill(myDataSet, "Daten")
 
        ' Daten an das DataGridView binden
        With Me.DataGridView1
            .DataSource = myDataSet
            .DataMember = "Daten"
            .Columns("ID").Visible = False
        End With
 
        conn.Close()
    End Sub
Nun mein Problem. Bekomme die Daten nur im String-Format im Datagrid angezeigt. Somit ist die Icon Spalte eine Textspalte und ich erhalte kein Icon sondern den String z.B. "I:\icon.png"

Hatte schon folgendes versucht:

...
Dim myDataSet As New DataSet
myDataSet.Tables.Add("Daten")
 
myDataSet.Tables("Daten").Columns.Add("Icon")
myDataSet.Tables("Daten").Columns("Icon").DataType = GetType(Bitmap)
 
myOleDbDataAdapter.Fill(myDataSet, "Daten")
 
' Daten an das DataGridView binden
...
Bekomme allerdings die Meldung, dass er logischerweise in der Spalte "Icon" einen Wert vom Typ Bitmap möchte und nicht wie jetzt den String.

Kann mir jemand auf die Sprünge helfen, wie ich das die Spalten im Dataset richtig vorbereite?

Besten Dank vorab!
Gruß
Christian
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Access -> Dataset -> Image-Spalte im Datagrid1.956Chr!ss02.01.09 18:58
Re: Access -> Dataset -> Image-Spalte im Datagrid1.427ModeratorRalf Ehlert03.01.09 08:50
Re: Access -> Dataset -> Image-Spalte im Datagrid1.421Chr!ss03.01.09 12:39
Re: Access -> Dataset -> Image-Spalte im Datagrid1.411ModeratorRalf Ehlert03.01.09 14:48

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel