Problème est que je ne veux pas utiliser Threading.Sleep (1000) parce que j'ai besoin du thread pour rester en vie, juste une pause avant d'exécuter la ligne de code suivante tout en interdisant à l'utilisateur de cliquer sur le formulaire pendant la pause. La méthode la plus simple à laquelle je pouvais penser était d'ouvrir un dialogue temporisé à fermeture automatique avec une opacité de 0. Une meilleure façon d'obtenir le même résultat?Dans les formulaires Windows DotNet, comment faire une pause dans un formulaire sans mettre le fil du formulaire en veille?
0
A
Répondre
1
Vous pouvez définir Enabled = false;
et utiliser un temporisateur pour le définir sur true
ultérieurement.
0
Définissez Enabled sur false, puis remettez-le à plus tard. Vous pourriez le faire sur un fil séparé. Pensez également à changer le curseur en curseur d'attente.
0
Il y a quelques façons:
Désactiver tout le formulaire, faites votre traitement et d'activer à nouveau. (Utilisez la propriété
Form.Enabled
.)Afficher une boîte de dialogue modale sans options pour la fermer ou la déplacer (complètement verrouillée) avec un message du type "Chargement" ou "Traitement", faire votre travail et le fermer.
Questions connexes
- 1. Mettre en pause un processus dans Windows
- 2. comment mettre fin à un fil lorsqu'il est en veille?
- 3. Comment mettre en pause le fil d'arrière-plan, puis continuer sur le bouton cliquer?
- 4. Comment attendre le fil de travail dans le formulaire principal?
- 5. Comment faire Formulaire Transperent dans Windows C#?
- 6. Comment faire pour mettre à l'échelle les contrôles sur un formulaire pour adapter le formulaire proportionnellement?
- 7. jQuery pause avant le formulaire submit
- 8. Mettre en pause GNU Faire dans une console Windows si une erreur se produit
- 9. sérialiser sans un formulaire?
- 10. Programme mobile Windows sans formulaire
- 11. Visual Studio Windows Aperçu du formulaire dans une résolution différente?
- 12. Travailler avec resource.resx dans le formulaire Windows
- 13. Contrôle sans un formulaire dans VB.NET
- 14. watir: Comment entrer une valeur dans un formulaire, sans soumettre le formulaire avec watir?
- 15. Comment créer un formulaire d'alerte asp.net formulaires
- 16. UserControl dans un formulaire DataGridView sous Windows
- 17. Comment valider/enregistrer un formulaire incorporé basé sur une valeur dans le formulaire parent dans symfony?
- 18. Mettre en pause un storyboard dans WPF?
- 19. Comment faire une pause/reprendre un processus externe sous Windows?
- 20. comment afficher un formulaire enfant dans le conteneur MDI sans l'apperance des contrôles dans le formulaire conteneur dans le formulaire enfant?
- 21. Mettre en pause une lecture de SourceDataLine
- 22. Bibliothèque de formulaires python html qui prend en charge les formulaires au sein du formulaire (formulaire en tant que champ)?
- 23. Définition du focus dans un formulaire datagridview sous Windows
- 24. Comment puis-je rediriger les soumissions de formulaires invalides vers le formulaire sans perdre les erreurs?
- 25. Comment faire une pause d'exécution jusqu'à ce que le nouveau formulaire soit fermé?
- 26. Comment faire une boucle dans les entrées de formulaire dynamique et les insérer dans un tableau
- 27. Comment mettre en pause un appel setTimeout?
- 28. Comment faire un formulaire Windows à venir dans l'application Windows fait dans C#?
- 29. Comment redimensionner dynamiquement le formulaire Windows dans une application mobile?
- 30. Mettre les valeurs de route actuelles/url dans le formulaire
Je vois que vous avez un tag pour le multithreading. Essayez-vous de faire en sorte que le formulaire attende la fin d'un thread en arrière-plan? Si c'est le cas, je vous suggère de regarder la classe BackgroundWorker. Vous pouvez ajouter des gestionnaires aux événements ProgressChanged et OnRunWorkerCompleted, où vous pouvez définir enabled sur false lorsque la progression passe à started, puis à true lorsqu'elle est terminée. Prend un peu pour le faire correctement, cependant. Peut-être serait-il préférable d'aller avec la réponse d'Albin. http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.aspx – seekerOfKnowledge