Я новый студент и в основном просто попал в тему пронизывания.Новичкам нужна какая-то помощь при прошивке
Что я должен делать, кажется довольно простым. Мне нужно сделать combobox, но мне нужно заполнить его, используя другой поток. И вот где я столкнулся с бедой, причиной;
Дополнительная информация: Работа с кросс-нитями не действительна: Control 'ComboBox' доступен из потока, отличного от потока, на котором он был создан.
Итак, я провел некоторое исследование, и кажется, что вы не можете заполнить элементы пользовательского интерфейса вне основной темы. Поэтому я сижу, царапая голову, думая, что лучше всего делать.
Справка будет принята с благодарностью.
Oh btw, его C# и в виде окон.
public Customer()
{
InitializeComponent();
Thread red = new Thread(Fill);
red.Start();
}
public void Fill()
{
Thread.Sleep(5000);
ComboBox1.Items.Add(1);
ComboBox1.Items.Add(2);
ComboBox1.Items.Add(3);
ComboBox1.Items.Add(4);
ComboBox1.Items.Add(5);
ComboBox1.Items.Add(6);
ComboBox1.Items.Add(7);
}
1. Предоставьте фактический код, вызывающий проблему. 2. используйте соответствующие теги. Этот вопрос касается C# и Winforms, а не о C – UnholySheep
Он удалил мой # как-то, я знаю, что C отличается. Но спасибо, я сделаю это сейчас – meowlady
И, кстати, изменение большинства элементов интерфейса из разных потоков запрещено в большинстве графических интерфейсов (по уважительным причинам), кто бы ни сказал, что это то, что вам нужно делать, было либо неясным, либо неправильным. – UnholySheep