vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 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

VB.NET - Ein- und Umsteiger
Re: Auf einem Formular - Dynamisch erzeugte UserControls setzen 
Autor: haesaet
Datum: 15.10.10 10:33

Dim conString As String
Dim cmd As New MySqlCommand
Dim conn As New MySql.Data.MySqlClient.MySqlConnection
Dim objDaten As MySqlDataReader
conString = "server=localhost;" _
                & "uid=xxxxxx;" _
                & "pwd=xxxxx;" _
                & "database=xxxxx;"
conn.ConnectionString = conString
 
Try
            conn.Open()
            cmd.Connection = conn
 
            cmd.CommandText = "select * from tbFragen as f left join" & _
              "tbantworten as a on (f.FrageID = a.FrageID);"
            objDaten = cmd.ExecuteReader()
            objDaten.Read()
 
Try
                If objDaten.HasRows Then
 
                    ' Feststellen und speichern der Zeilenanzahl
                    Dim y = Me.Tabel1.RowCount - 3
 
                    'Spalte wo die Controls mit Antworten enstehen
                    Dim c = 2
 
                    Do
                        Dim FrageID1 = objDaten.Item("FrageID")
 
                        If Not FrageId = FrageID1 Then
 
                            'Spalte in die eine Textbox  eingefügt wird
                            c = 2
 
                            'Neue Zeile erstellen
                            y += 1
 
                            'Erzeugen eines Objektes und speichern in eine 
                            ' Variable
                            Dim tb1 = New Windows.Forms.TextBox()
 
                            'Einfügen des Objektes in  in Spalte x und Zeile y
 
                            Tabel1.Controls.Add(tb1, 0, y)
 
 
                            tb1.Text = objDaten.Item("Frage")
                            tb1.Width = 400
 
                            Dim optA = objDaten.Item("AntwortAnzahl")
 
                            Dim comb1 = New Windows.Forms.ComboBox()
                            Tabel1.Controls.Add(comb1, 1, y)
 
                  ' Ich lasse nur max 8 Antworten zu..Mehr ergeben sich nicht 
                  ' für meinen Bedarf
                            For i = 0 To 8
                                comb1.Items.Add(i)
                            Next
 
                            comb1.SelectedItem = optA
                            'erstellt einen EventHandler für die Combobox
                            AddHandler comb1.SelectedIndexChanged, AddressOf _
                              DynamicClick
 
                            'Fragen die keine vorgegebenen Antworten haben 
                            ' bekommen eine Textbox generiert
                            If optA = 0 Then
                                Dim Textbox = New Windows.Forms.TextBox()
                                Tabel1.Controls.Add(Textbox, c, y)
                                Tabel1.SetColumnSpan(Textbox, 4)
                                Textbox.Width = 500
                            Else
                                Dim Textbox = New Windows.Forms.TextBox()
                                Tabel1.Controls.Add(Textbox, c, y)
                                If objDaten.Item("Antwort") Is DBNull.Value Then
                                    Textbox.Text = ""
                                Else
                                    Textbox.Text = objDaten.Item("Antwort")
                                End If
 
                            End If
 
                            Dim cb As New Windows.Forms.CheckBox()
                            Tabel1.Controls.Add(cb, Tabel1.ColumnCount, y)
 
                            'Setze Wert von FrageId1 auf FrageId
                            FrageId = FrageID1
                        Else
                            c += 1
                            'Abfrage ob Spalte größer oder gleich 5, wenn ja 
                            ' neue Zeile erstellen
                            If c >= Tabel1.ColumnCount - 1 Then
                                y += 1
                                c = 2
                            End If
 
                            Dim tba = New Windows.Forms.TextBox()
                            Tabel1.Controls.Add(tba, c, y)
 
                            If objDaten.Item("Antwort") Is DBNull.Value Then
                                tba.Text = ""
                            Else
                                tba.Text = objDaten.Item("Antwort")
                            End If
                        End If
 
                    Loop Until objDaten.Read() = False
                Else
                    MsgBox("No rows returned.")
                End If
 
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
            objDaten.Close()
 
        Catch ex As MySql.Data.MySqlClient.MySqlException
            MessageBox.Show(ex.Message)
        End Try
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Auf einem Formular - Dynamisch erzeugte UserControls setzen3.613jasmina01.10.10 11:46
Re: Auf einem Formular - Dynamisch erzeugte UserControls set...2.879ModeratorDaveS06.10.10 12:44
Re: Auf einem Formular - Dynamisch erzeugte UserControls set...2.679jasmina15.10.10 15:39
Re: Auf einem Formular - Dynamisch erzeugte UserControls set...2.656haesaet15.10.10 10:29
Re: Auf einem Formular - Dynamisch erzeugte UserControls set...2.796haesaet15.10.10 10:33
Re: Auf einem Formular - Dynamisch erzeugte UserControls set...2.727ModeratorFZelle15.10.10 11:13
Re: Auf einem Formular - Dynamisch erzeugte UserControls set...2.632haesaet15.10.10 11:28

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