簡體   English   中英

使用組合框自動完成搜索時程序崩潰

[英]Program crashed when i search using combobox autocomplete

我正在嘗試使用組合框自動完成功能在具有大數據的數組變量中進行搜索。

這是我的工作:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    Thread thread1;

    long test1 = 0;
    string randName;
    String[] ComboboxValue = new String[20001];

    private void button1_Click(object sender, EventArgs e)
    {
        thread1 = new Thread(add_combo_1);
        thread1.Start();
    }

    private static Random random = new Random();
    public static string RandomString(int length)
    {
        const string chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        return new string(Enumerable.Repeat(chars, length)
          .Select(s => s[random.Next(s.Length)]).ToArray());
    }

    private void add_combo_1()
    {
        while (test1++ < 20000)
        {
            randName = RandomString(1000);
            this.Invoke((MethodInvoker)delegate () {
               //comboBox1.Items.Add(randName.ToString());
               ComboboxValue[test1] = randName.ToString();
                comboBox1.AutoCompleteCustomSource.Add(ComboboxValue[test1]);
            });
        }
    }
}

這是我使用組合框的設置:

在此處輸入圖片說明

我認為當我搜索並且程序仍將數據加載到數組時發生崩潰。

那么有人有解決方案嗎?

您必須讓程序完成您設置的while循環,除非您插入break; 內部是否在循環內使用IF語句

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM