-2
我是一名新生,基本刚刚进入主题线程。新手需要一些线程帮助
我必须做的事似乎很简单。 我必须做一个组合框,但我需要使用不同的线程来填充它。 那是我遇到麻烦的原因;
附加信息:跨线程操作无效:控制'ComboBox'从除创建线程以外的线程访问。
所以我做了一些研究,看来你不能在主线程之外填充UI元素。所以我坐在这里挠挠头脑,想什么是最好的事情。
帮助将不胜感激。
哦顺便说一句,它的C#和Windows窗体。
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
顺便说一句,在大多数GUI框架中,修改不同线程的UI元素是有原因的,但是谁告诉你,你应该做的事情是不清楚或者错误的。 – UnholySheep