Textbox voor gedeelte gelijk aan Checklistbox

Status
Niet open voor verdere reacties.

TheJjokerR

Gebruiker
Lid geworden
25 apr 2008
Berichten
104
Ik zoek een manier om dit te doen:
Code:
If Label1.Text = OtherForm.CheckedListBox1.Items.Item 'En dan hier een item die voor een DEEL gelijk is aan Label1.Text
Ik heb namelijk in die CheckedListBox1 items die er zo uit zien:
"itemName (hh:mm:ss)"
Nu will ik dus checken of die checkedlistbox1 items bevat die bij het deel hh:mm:ss gelijk zijn aan label1.

Ik hoop dat het duidelijk is, ik heb al een beetje gepuzeld maar ik kom er niet uit :confused:

Ik hoop dat jullie mij kunnen helpen.
 
Laatst bewerkt:
Graag even je topicvraag aanpassen.
 
Subject titel aangepast

Ik heb een idee dat ik het probleem met split kan oplossen maar ik weet niet precies hoe... Iemand een idee?
 
Misschien ligt het erg voor de hand hoor , maar dit is voor mij een antwoord op je vraag.

Code:
        For Each Item As String In CheckedListBox1.Items
            If Item.ToString.Contains(Label1.Text) Then
                MsgBox("Gevonden Item : " & Item)
            End If
        Next
 
Bedankt, je moet het maar weten ;P Ik wist niet helemaal hoe je loops kon gebruiken, maar hoe kan ik ook op deze manier voor iedere item een apart element in een XML schrijven en dan er later weer uitladen voor in de CheckedListBox1?
 
Met XML/SOAP serialization/deserialization ...

Maar das ff te ingewikkeld om 'even' uit te leggen.
 
Is er een andere manier? Mischien moet ik gewoon stuk voor stuk inladen, zo dus:
Code:
            Using writer As System.Xml.XmlWriter = System.Xml.XmlWriter.Create("c:\test.xml", Nothing)
                writer.WriteStartElement("XML")
                writer.WriteStartElement("Item1")
                writer.WriteString(CheckedListBox1.Items.Item(1))
                writer.WriteEndElement()
                writer.WriteStartElement("Item2")
                writer.WriteString(CheckedListBox1.Items.Item(2))
                writer.WriteEndElement()
                writer.WriteStartElement("Item3")
                writer.WriteString(CheckedListBox1.Items.Item(3))
                writer.WriteEndElement()
                writer.WriteStartElement("Item4")
                writer.WriteString(CheckedListBox1.Items.Item(4))
                writer.WriteEndElement()
                writer.WriteStartElement("Item5")
                writer.WriteString(CheckedListBox1.Items.Item(5))
                writer.WriteEndElement()
                writer.WriteEndElement()
                writer.Flush()
                writer.Close()
            End Using
En dan een max zetten omdat het anders te veel werk word?
Maar dit is wel heel erg, uhm... slordig, is er een more effecient way?
 
Dat is heel leuk natuurlijk , maar je slaat alleen de naam van het item op.
een for/each in de checkedlistbox1.items loop zou daarin genoeg zijn om

Maar is de checked status is niet belangrijk dan?
 
D'oh. Inderdaad dat zal ik met die loop doen. Ik heb de checked status inderdaad niet nodig. Maar is er echt geen manier om iedere item stukvoorstuk te loopen naar een XML file,met voor iedere file een andere naam en die dan weer te laden?
 
Nou dan kan je net zo goed die checkedListbox ook veranderen in een listbox. Scheelt nog extra geheugen ook.
 
Inderdaad eigenlijk wel, maar kun je een loop voorbeeldgeven hoe ik dit in een XML loop? Of lukt dat niet?
Bedankt voor de tip :thumb:
 
Schrijven naar XML is dit een van de juiste manieren.

Code:
        Dim settings As New Xml.XmlWriterSettings

        settings.Encoding = System.Text.Encoding.Unicode
        settings.Indent = True

        Using writer As System.Xml.XmlWriter = System.Xml.XmlWriter.Create("c:\temp\test.xml", settings)

            writer.WriteStartElement("XML")
            writer.WriteStartElement(ListBox1.Name.ToString)

            Dim Counter As Integer

            For Each Item As String In ListBox1.Items
                writer.WriteElementString("Item" & Counter, Item.ToString)
                Counter += 1
            Next

            writer.WriteEndElement()
            writer.Flush()
            writer.Close()
        End Using


Lezen gaat dan op de volgende manier.


Code:
        Dim XML As New Xml.XmlDocument
        XML.Load("c:\temp\test.xml")

        Dim xmlObject As Xml.XmlNode = XML.SelectSingleNode("XML")
        Dim xmlObjectName As Xml.XmlNode = xmlObject.FirstChild
        Dim xmlItems As Xml.XmlNode = XML.SelectSingleNode("XML/" & xmlObjectName.Name.ToString)

        For Each Element As Xml.XmlNode In xmlItems
            DirectCast(Me.Controls(xmlObjectName.Name), ListBox).Items.Add(Element.InnerText)
        Next
 
Maar je vraag krijgt nu een hele andere wending. Dus bij xml vragen even een nieuwe topic openen graag. Ik ben er niet altijd namelijk.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan