Je suis toujours coincé.Comment créer un contrôle et gérer ses événements en une seule méthode?
Supposons que j'ai un contrôle utilisateur avec un bouton. Et un événement appelé damnIt_ButtonClicked. Dans la fenêtre principale, je veux émuler la durée de vie du contrôle comme si c'était un dialogue modal, mais ce n'est pas le cas.
Je veux tout envelopper dans une méthode, il renvoie vrai si le bouton sur le contrôle cliqué.
public bool Show() {
var control = new ControlWithSingleButton();
bool result;
control.damnIt_ButtonClicked += (object sender, EventArgs args) =>
{
result = true;
};
MainWindowGrid.Children.Add(control);
MainWindowGrid.Visibility = Visibility.Visible;
return result;
}
Maintenant. Comme vous voyez le problème est cette méthode retournera toujours faux; Mais je dois retourner un résultat uniquement lorsque l'événement damnIt_ButtonClicked se déclenche. Cela signifie que je dois mettre le thread en attente, jusqu'à ce que l'utilisateur clique sur le bouton. Pas vrai? Ou comment cela devrait être fait. Aidez-moi s'il vous plaît ....
Nice - beaucoup mieux que ce que les hacks auraient été nécessaires pour le faire fonctionner dans l'autre sens. – Justin