Attualmente sto sviluppando un'app Window che utilizza CheckedListBoxes per alcuni aspetti del programma. Un problema che ho riscontrato è che ho cercato di trovare quale evento viene attivato quando un elemento è selezionato in modo che possa abilitare un pulsante del modulo quando viene controllato un elemento di elenco.Windows C# CheckedListBox Checked Item Gestione degli eventi
Il problema è che ho provato ad utilizzare quanto segue;
private void clbAvailMods_ItemCheck(object sender, ItemCheckEventArgs e)
{
if(e.NewValue == CheckState.Checked)
{
btnInstall.Enabled = true;
}
}
ma quando ho impostato un punto di interruzione l'istruzione if, non è mai spara al momento del check un elemento nella casella di riepilogo.
Sto facendo qualcosa di sbagliato qui?
Sembra che il Form Designer abbia registrato un evento ItemCheck errato. Ciò ha risolto il problema principale, ma ora ne è emerso uno nuovo che appare più vago nel suo contesto. Apparentemente lo stato di un elemento selezionato non viene aggiornato fino a dopo il termine di ItemCheck. Questo è un problema poiché ho bisogno che il primo elemento venga controllato per attivare il codice incorporato. Dal momento che lo stato non viene aggiornato fino a dopo, perdo la registrazione immediata dell'oggetto che controlla l'attivazione degli eventi. –