winform ComboBox 加载数据时过慢

hanguangjunqq 2012-08-17 04:07:30
一种情况是如下加载
InstalledFontCollection fonts = new InstalledFontCollection();

foreach (System.Drawing.FontFamily family in fonts.Families)
{
ComboBox .Items.Add(family.Name);
}
ComboBox .SelectedIndex = 74;
另一种情况是给他绑定数据源

ComboBox .DisplayMember = "col_cname";
ComboBox .DataSource = new ColumnsInvoking().GetDt();
ComboBox .ValueMember = "col_name";
ComboBox .SelectedIndex = 0;
试过很多次,界面加载要迟钝三秒作用 ,数据量只有一百条左右,请高手指点 ,因为没分所以给不了了
...全文
524 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hanguangjunqq 2012-08-20
  • 打赏
  • 举报
回复
谢谢大家帮忙
  • 打赏
  • 举报
回复
如果觉得慢就使用委托
this.Invoke(new Action(() => { /*原代码不动放进来*/}));
这是同步委托,当然也可以改为异步
Mr_graceless 2012-08-17
  • 打赏
  • 举报
回复
第二种要快啊,明显的
叫我灰太狼 2012-08-17
  • 打赏
  • 举报
回复
感觉第二种方法应该不会卡的,第一种如果只100条应该也不会,你在代码的前后记录下时间,看看是不是其他的位置卡住了
sinodzh 2012-08-17
  • 打赏
  • 举报
回复
,慢应该是其他的原因。你在绑定前和绑定后定义2个时间,相减看看耗时多久。combox都是字符串 很快的。
Samoul_iixx 2012-08-17
  • 打赏
  • 举报
回复
添加之前清理下comebobox数据看看
shizhu820228 2012-08-17
  • 打赏
  • 举报
回复
100条不至于吧,
实在不行,就在线程中加载ComboBox吧。
听可笑的承诺 2012-08-17
  • 打赏
  • 举报
回复
编译好在运行试试。

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧