CheckedCombobox so implementieren das man sie auch nutzen kann?

  • VB.NET
  • .NET 4.5

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    CheckedCombobox so implementieren das man sie auch nutzen kann?

    Hi,

    Mir wurde von einem Kumpel diese Benutzerdefinierte Combobox empfohlen(code.msdn.microsoft.com/window…-Control-52dbdb37#content) und ich versuche diese auch irgendwie zu implementieren aber bekomme das leider nich ganz hin. Also ich erstelle eine neue Klasse trage dort den code der Checked Combobox ein und kompiliere dann dann hat man diese ja als "CheckedCombobox" in seiner Toolbox (Bilder seht ihr unten) dann möchte ich diese auf meine Form ziehen aber es kommt eine Selected Index = 0 Fehlermeldung. Also wahrscheinlich implementier ich einfach falsch oder so aber habe echt keine Ahnung ^^









    *Verschoben - hat nichts mit Datenbanken zu tun. Bitte in Zukunft darauf achten* ~NoFear23m

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Nofear23m“ ()

    Setz den Wert doch mal mit "1" und schau was da passiert.
    Was ist an der Combobox denn besonders? Er sagt ja quasi, dass "nichts auswählen" nicht erlaubt ist.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Nein, du implementierst ganz richtig.
    Die Combobox hat einen Bug - also wenns irgend geht, lass die Finger davon.

    Hab den Fehler evtl. gefunden.
    In der CheckedCombobox muss diese Zeile raus:

    VB.NET-Quellcode

    1. MyBase.SelectedIndex = 0

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()

    @ErfinderDesRadesnull
    Hi,

    also erstmal viel Dank :) der Befehl war tatsächlich überflüssig und hat das ganze blockiert. Also die CheckedCombobox lässt sich jetzt endlich im Designer platzieren also hab ich mal ein paar Items zum austesten hinzugefügt leider ist der ItemHeight Befehl auch in irgendeiner Weise ein Problem (da falscher Index) Screenshot hänge ich unten an. Falls jemand helfen kann wäre schön. Gucke mir jetzt Trotzdem noch mal den Kompletten Code an und versuche das Logisch zu verstehen^^. Aber scheint mir eher so das ich mir in nächster Zeit erstmal anschaue wie so das eigene erstellen eines Controls Funktioniert macht sicherlich mehr Sinn wenn ich im nachhinein nichtmehr auf vorgefertigte zurückgreifen muss.


    Bzw. gerade kurz drüber nachgedacht und bemerkt das er wahrscheinlich einfach garnicht bemerkt das ich Items hinzufüge nicht wahr ? Schaue mal ob ich dafür eine Lösung finde wenn jmd es besser weiß wäre Hilfe nett. :)


    Habs. Brauche bloß noch eine From Klausel die mir in der Combobox zum passenden User die passenden pcids anzeigt ^^.


    Code:

    Quellcode

    1. Dim myConn As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\10.0.0.8\FabianSchmidt$\Documents\Eigenes PRGRMM\DBFS2.accdb;")
    2. Dim myCommand As New OleDb.OleDbCommand("SELECT PcID from UserPC INNER JOIN Username WHERE Username.U_User=2 ON Username.U_PcID=UserPC.PcID ORDER BY Username.U_user", myConn)
    3. 'Fehlerhaft brauche da abhilfe bitte^^
    4. Dim myAdapter As New OleDb.OleDbDataAdapter(myCommand)
    5. Dim myDT As New DataTable
    6. myAdapter.Fill(myDT)
    7. For Each Eintrag As DataRow In myDT.Rows
    8. CheckedCombobox1.CheckedComboboxItems.Add(Eintrag.Item("PcID").ToString)
    9. Next
    10. CheckedCombobox1.Text = CheckedCombobox1.Items(0)


    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „fabimaurice“ ()

    Ich hab dir an anderer Stelle schon empfohlen: Einarbeite dich erstmal, wie man standard-mässig in .Net Datenbank-Inhalte darstellt.
    Insbesondere Databinding.
    Da kannste bei deim Code bis zu 100% einsparen, und gewinnst derbe was an Sicherheit und Performance.
    So wie du hier anfängst, wirst du am Ende für jeden FliegenSch... womöglich mehrere solcher Methoden auffahren, die sich möglicherweise auch noch gegenseitig in die Quere kommen.

    Nochma: Lerne erstmal den Standard, ehe du dich an so Schnickschnack wie Dritt-Anbieter-Controls oder gar selbstgemachte heranmachst.