button1.PerformClick () dans wpf
Pourquoi ce code dans WPF ne fonctionne pas ?
private void button1_Click(object sender, EventArgs e) { MessageBox.Show("yes"); } private void Form1_Load(object sender, EventArgs e) { button1.PerformClick(); }
J'ai besoin de commande.
source d'informationauteur visual2020
Vous devez vous connecter pour publier un commentaire.
À utiliser l'application windows form style, vous devez écrire la suite de l'extension de la méthode:
maintenant, vous pouvez l'utiliser pour n'importe quel bouton, en supposant un bouton appelé "btnOK":
Attendre.. il y a un moyen simple. si votre nom de bouton est button1 et cliquez sur button1 événement déjà inscrit,il vous suffira d'appeler cet événement comme
Au lieu de PerformClick() utilisation RaiseEvent()
Bonnes pratiques en WPF est à l'aide de commandes. Il améliore la testabilité et la sépare de l'INTERFACE utilisateur et la logique métier.
D'abord, vous pouvez essayer RoutedUICommand.
Dans le fichier code-behind, nous devons définir RoutedClickCommand et Exécuter|CanExecute des gestionnaires:
Donc, quand vous avez besoin le bouton de la logique ("button1.PerformClick();" dans votre exemple), il suffit de mettre la ligne suivante:
Quant à moi, j'préférez un autre moyen qui suppose de réaliser la commande dans le modèle de présentation. Bibliothèque d'Applications composites (Prism) m'aide avec son DelegateCommand classe. Puis de définition de commande dans le modèle de présentation ressemble:
Et vue XAML et le code behind:
Suivant les appels de code de commande en vue de contourner cliquant sur le bouton:
Un extrait de Adam Nathans WPF Unleashedrecommandé par ce blog.
À mon humble avis l'un des meilleurs, si pas le meilleur WPF références autour de.
Je pense que le plus court et le plus efficace de la solution à votre problème est simplement de faire en une seule ligne.
Qui devrait fonctionner pour WPF C#
Parce que PerformClick est une méthode de WindowsForms Bouton de contrôle:
http://msdn.microsoft.com/en-us/library/system.windows.forms.button.performclick.aspx
Pas sur le WPF Bouton de contrôle:
http://msdn.microsoft.com/en-us/library/system.windows.controls.button_methods.aspx
Pour automatiser un clic sur un bouton, vous pouvez prendre un coup d'oeil à l'INTERFACE d'automatisation cadre:
http://msdn.microsoft.com/en-us/library/ms747327.aspx