繁体   English   中英

C#如何加快组合框

[英]c# how to speed up a combo box

如何加快组合框填充速度? 从学术上讲,假设一个组合框有10亿条记录要呈现。 我们如何最大化程序的速度。 除了组合框,我还可以使用其他什么方法来显示数据?

以下是我的特定问题的详细信息:
我正在使用WPF事件处理程序

<ComboBox Height="24" SelectedIndex="0" HorizontalAlignment="Left" 
 Margin="146,27,0,0" Name="emoployeeUserNameComboBox" VerticalAlignment="Top"
 Width="198" Loaded="emoployeeUserNameComboBox_Loaded"/>

private void emoployeeUserNameComboBox_Loaded(object sender, RoutedEventArgs e) {
    using (ToolboxDataContext dbToolbox = new ToolboxDataContext()) {
        var query = (from x in dbToolbox.DropDownEmployeesUserNames()
                     select x.UserName).ToList();
        this.emoployeeUserNameComboBox.ItemsSource = query;
    }

DropDownEmployeesUserNames上方的存储过程定义为

SELECT [UserName],Emp_Number
FROM AdminUser
ORDER BY UserName

它返回14,257行

组合框旨在包含一组有限的选项。 如果您希望允许某人从10亿个选项中进行选择,则最好使用自动完成功能和一个按钮,该按钮会弹出一个弹出窗口,该窗口可有效搜索选择项所需的数据。 我倾向于构建具有以下功能的弹出窗口:

  1. 过滤机制
  2. Alpha限制器
  3. 分页
  4. 用户选择值的方式趋于一致时,最近选择的/受欢迎的值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM