我有一个ComboBox
名为cableGaugeSelect
的窗体。有时我需要读取当前选择的索引以响应串行消息。该代码不会有问题阅读文本框或复选框,但是当它到达读所选择的指数访问从UI以外的其他线程组合框控件
cableGaugue[0] = (byte) cableGaugeSelect.SelectedIndex;
我得到一个未处理的异常:
“跨线程操作无效:控制'cableGaugeSelect'从非创建线程的线程访问。“
看来我不得不使用委托从线程之间获取数据,但是我发现如何使用委托的所有示例都是如何将文本放入文本框。我在计算如何创建将检索此信息的委托时遇到了很多问题。任何帮助将被触发
是否有一个原因,你是一个'int'投给'byte'? – mittmemo 2015-02-23 23:56:11
跨线程操作Google很好。您不能访问后台线程中的控件。你需要更好地记录这一点。简单的方法是在线程开始时将需要的信息作为参数传递。 – LarsTech 2015-02-24 00:00:02
_“,但我发现如何使用委托的所有示例都是如何将文本放入**文本框**”_ - 'TextBox'; 'ComboBox'; 'Listbox' - 没关系,解决方案是一样的。不需要另一个问题。你有没有试图尝试在另一篇文章中找到的解决方案?祝你好运 – MickyD 2015-02-24 00:06:42