当前位置:编程学习 > C#/ASP.NET >>

combobox初始值问题

由于数据量较大,调用画面的代码如下:

tmpForm.Show()
Application.DoEvents()

现在发现form.shown事件中,对combobox初始值的设定无效,画面加载后,始终选中第一条数据。
但如果去掉Application.DoEvents(),就能正常选中默认数据。

请问如何在不去掉Application.DoEvents()的前提下,对combobox设定初始值?
--------------------编程问答-------------------- tmpForm_load中再去做此事. --------------------编程问答--------------------
引用楼主 devotedsky 的回复:
由于数据量较大,调用画面的代码如下:

VB.NET code

tmpForm.Show()
Application.DoEvents()


现在发现form.shown事件中,对combobox初始值的设定无效,画面加载后,始终选中第一条数据。
但如果去掉Application.DoEvents(),就能正常选中默认数据。

请问如何在不去掉Application.Do……

我用的vs2008測試是沒有問題的,
你把 Application.DoEvents()放到設置combobox初始值后的語句執行一下看看。 --------------------编程问答--------------------
引用 1 楼 drk928 的回复:
tmpForm_load中再去做此事.

load事件也不行。 --------------------编程问答--------------------
引用 2 楼 tosp2012 的回复:
你把 Application.DoEvents()放到設置combobox初始值后的語句執行一下看看。


Application.DoEvents()是在菜单画面里执行的,以免代码冗余。
会不会是因为重写了DrawItem事件的缘故? --------------------编程问答-------------------- 说明:
当运行 Windows 窗体时,它将创建新窗体,然后该窗体等待处理事件。该窗体在每次处理事件时,均将处理与该事件关联的所有代码。所有其他事件在队列中等待。在代码处理事件时,应用程序并不响应。
通常,您在循环中使用Application.DoEvents()来处理消息。
所以,你可能把Application.DoEvents()位置要重新定位。
补充:.NET技术 ,  VB.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,