|
VB.Net-Forum - Beitragsübersicht - |
|
Thema | V12: ToolStripTextBox dynamisch erweitern und auswählen (checked) |
Von |
DiBo |
E-Mail |
dbork@hotmail.de |
Datum |
04. Februar 2016 um 20:42:11 |
Frage |
Hallo zusammen,
an einem ToolStripMenuItem habe ich eine ToolStripTextBox angehängt, die ich während der Laufzeit meines Programmes mit einer Liste unbekannter Anzahl (etwa 0-15) auffüllen möchte um dann eine Zeile der Auflistung auswählen zu können.
Gibt es hierzu ein Beispiel? das wäre echt klasse, denn ich bin schon ziemlich Ratlos
Helau aus Mainz |
|
Antwort: |
Von |
Nico |
E-Mail |
nico.schertler@studentpartners.de |
Datum |
07. Februar 2016 um 15:56:20 |
Antwort |
Das kannst du realisieren, indem du alle anderen Items im selben Container abwählst: Private Sub ToolStripMenuItem_CheckedChanged(sender As Object, e As EventArgs) Dim menuItem = CType(sender, ToolStripMenuItem) If menuItem.Checked Then 'Nur überprüfen, wenn aktuelles Element ausgewählt ist Dim dropDown = CType(menuItem.GetCurrentParent(), ToolStripDropDown) 'Das umschließende Element For Each item As ToolStripMenuItem In dropDown.Items 'Über alle Geschwister iterieren If item IsNot menuItem Then 'Sicherstellen, dass das aktuelle Element nicht wieder abgewählt wird item.Checked = False 'Geschwisterelement abwählen End If Next End If End Sub Das ermöglicht auch, dass gar kein Element ausgewählt ist. Wenn du das nicht willst, musst du die CheckOnClick Eigenschaft auf False setzen und das Click Event behandeln (anstelle von CheckedChanged). Dieses Event muss sich dann selbst darum kümmern, dass das richtige Element ausgewählt ist. Performanter wird das Ganze, wenn du dir das aktuell ausgewählte Element merkst und nicht über die ganze Liste iterierst. Das sind aber Kleinigkeiten, die man einbauen kann, wenn man weiß, was man tut, da damit auch ein paar Fallstricke kommen. |
|
[ Antwort schreiben | Zurück zum VB.Net-Forum | Forum-Hilfe ] |
|
Letzte Aktualisierung: Sonntag, 13. Dezember 2015 |
|