[VB .NET] Segno di spunta esclusivo in menu. Come?

giovedì 04 febbraio 2010 - 10.48

Pak1 Profilo | Newbie

Ciao a tutti,
in un menù di un'applicazione che sto creando, vorrei che gli item, una volta selezionati, abbiano il segno di spunta di fianco. Per far questo ho impostato su True la proprietà CheckOnClick. Vorrei inoltre che il segno di spunta fosse esclusivo, ossia che non sia possibile avere più elementi selezionati contemporaneamente.

Potete aiutarmi?

Grazie.

AntCiar Profilo | Expert

Ciao.

Seleziona tutti gli elementi che vuoi controllare univocamente e genera un unico evento Click (Controlla nel codice che dopo la clausola Handles siano specificati i nomi di tutti gli Item da controllare)

Poi all'interno dell'evento click incollaci questo codice


Dim parent As ToolStripMenuItem = CType(sender, ToolStripMenuItem).OwnerItem
For i As Integer = 0 To parent.DropDownItems.Count - 1
If Not parent.DropDownItems(i).Name.Equals(CType(sender, ToolStripMenuItem).Name) Then
CType(parent.DropDownItems(i), ToolStripMenuItem).Checked = False
End If
Next
parent.ShowDropDown()


Questo oltre a rendere escusivo il check ti tiene aperto il menu. Se vuoi che il menu venga chiuso ad ogni click non devi mettere la riga 'parent.ShowDropDown()'

ciao
Cristian Barca

Pak1 Profilo | Newbie

grazie mille!!!

Funziona alla perfezione

AntCiar Profilo | Expert

Ciao

Sempre per questioni di correttezza, potresti chiudere il thread?

Grazie
Cristian Barca
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5