[vb.net]解决 "在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级"
来源:互联网 发布:腾讯nba直播大数据 编辑:程序博客网 时间:2024/05/13 22:18
在一段给DATAGRID控件绑定DATATABLE对象的代码中,
加入线程的操作后提示"在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级"
在CSDN的论坛中找到其他人的建议"使用委托的方法, 先获取控件的控制权,在对控件进行操作就可以了"
思路有了,就是实施.
第一步,声明委托和实例话委托
Private Delegate Sub BindDataGridDelegate() ' 创建委托和委托对象
Private myBindDataGridDelegate As BindDataGridDelegate = New BindDataGridDelegate(AddressOf selectdata) 'selectdata是包含datagrid的数据绑定的代码段
第二步,加入线程的准备
Private bindGridThread As Thread
Private Sub InvokeBindDataGrid() '// 调用非此线程创建的控件的操作必须用 Invoke 或 BeginInvoke .否则将抛出异常
dg_Ysinfo.Invoke(myBindDataGridDelegate, Nothing)
End Sub
Private Sub StopBindThread()
If Not bindGridThread Is Nothing Then
If bindGridThread.IsAlive Then
bindGridThread.Abort()
bindGridThread.Join()
End If
End If
bindGridThread = Nothing
End Sub
第三步,在按钮的点击事件中,调用线程进行DATAGRID的对查询结果的绑定
Private Sub btRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btRun.Click
StopBindThread()
bindGridThread = New Thread(New ThreadStart(AddressOf InvokeBindDataGrid)) '; // 通过委托调用,合法
bindGridThread.Start()
End Sub
通过以上3步操作后,最终把"在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级"的问题解决了,
测试的结果是预期想要的
- [vb.net]解决 "在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级"
- 解决 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级
- 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 某个线程上创建的控件不能成为在另一个线程上创建的控件的父级(转)
- 决多线程操作控件时可能出现的异常:“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”
- 错误:在一个线程上创建的控件不能成为在另一个线程控件的父级(处理方法)
- C# 解决 调用线程非安全的控件xx不是在本线程上创建 异常
- 解决 Control.Invoke 必须用于与在独立线程上创建的控件交互。在智能设备上的(c# / PDA)
- c# 解决 Control.Invoke 必须用于与在独立线程上创建的控件交互。在智能设备上的(PDA)
- 解决:VB.NET程序中 datagridview 多次绑定出现 的“不能在数据绑定的 DataGridView 控件上设置 ColumnCount
- 在WM下,获得当前路径处理和解决异常“Control.Invoke 必须用于与在独立线程上创建的控件交互。”
- [ 在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。]错误的处理
- MainActivity中为什么不能在自己创建的线程中调用控件的方法?
- C#在一个线程中操作另一个线程的控件
- vb.net线程的创建
- C# .NET 在一个线程中访问另一个线程的控件
- C# .NET 在一个线程中访问另一个线程的控件
- 如何在子线程中操作窗体上的控件
- usb 的一点入门知识
- IE打开网站时出现Office安装框……
- 桃、李、橄榄购买问题
- 网站访问人数太多?
- 惠普计划未来3年裁员2.46万人 年节省$18亿
- [vb.net]解决 "在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级"
- CSDN调查中了个小扑
- MSN:小绿人的雄心
- 2410下的汉字显示总结
- 关于自启动项AppInit_DLLs被修改为 kmon.dll的问题解释
- Laszlo China
- 大连寻求在更高层次上的对日合作
- 原创武侠rpg《越女剑》
- 三十不算什么,心态最重要!