C# Contrôles créés sur un thread ne peut pas être apparenté à un contrôle sur un autre thread
Je suis en cours d'exécution d'un thread et le thread extrait les informations et de créer des étiquettes et de l'afficher, voici mon code
private void RUN()
{
Label l = new Label();
l.Location = new Point(12, 10);
l.Text = "Some Text";
this.Controls.Add(l);
}
private void button1_Click(object sender, EventArgs e)
{
Thread t = new Thread(new ThreadStart(RUN));
t.Start();
}
Le plus drôle, c'est que j'ai eu une demande antérieure qui a un panneau et j'ai utilisé pour ajouter des contrôles à l'aide de threads sans problème, mais celui-ci ne me laisse pas faire.
Vous pouvez modifier les éléments de l'INTERFACE utilisateur uniquement à partir de l'UI thread.
Séparer les affaires de trucs (info saisissant) à partir de l'INTERFACE utilisateur (création d'Étiquettes).
pourquoi créer de thread juste pour ajouter un élément de l'INTERFACE utilisateur?
double possible de la Création de contrôles dans un non-thread de l'INTERFACE utilisateur
Séparer les affaires de trucs (info saisissant) à partir de l'INTERFACE utilisateur (création d'Étiquettes).
pourquoi créer de thread juste pour ajouter un élément de l'INTERFACE utilisateur?
double possible de la Création de contrôles dans un non-thread de l'INTERFACE utilisateur
OriginalL'auteur BOSS | 2013-02-07
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas mettre à jour thread d'INTERFACE utilisateur à partir d'un autre thread:
OriginalL'auteur Igoy
Vous avez besoin d'utiliser BeginInvoke pour accéder à l'INTERFACE fil en toute sécurité à partir d'un autre thread:
Merci, très bon.
OriginalL'auteur Nathanial Woolls
Vous essayez d'ajouter une commande à un parent de contrôle à partir d'un autre thread , les contrôles peuvent être ajoutés aux parents de contrôler uniquement à partir du thread parent de contrôle a été créé!
utilisation Invoquer pour accéder à l'INTERFACE fil en toute sécurité à partir d'un autre thread:
OriginalL'auteur PaRiMaL RaJ