2017-12-02 7 views
0

TextBoxのAutoCompleteSourceAutoCompleteModeプロパティは、テキストボックスで自動補完を使用できるようにします。c#check textbox autocompleteが空です。

私はテキストボックスのAutoCompleteSourceとして直接データテーブルをバインドしています。

入力ソースがソースで利用できない場合がありますが、自動補完では結果が得られないため、これらの状況で別の処理を行う必要があります。

自動補完結果が空であるかどうかを確認する必要がありますか?

答えて

1

ここでは、あなたが取ることのできるアプローチの1つです。次のコードは、3文字以上を入力したときに、テキストボックスのTextChangedイベントで提案を受け取ります。提案を受け取り、提案が返されたかどうかを確認します。はいの場合はAutoCompleteCustomSourceに設定します。さもなければ、私たちは何をやろうとします。

private void textBox1_TextChanged(object sender, EventArgs e) 
{ 
    TextBox t = sender as TextBox; 
    if (t != null) 
    { 
     // Here I am making the assumption we will get suggestions after 
     // 3 characters are entered 
     if (t.Text.Length >= 3) 
     { 
      // This will get the suggestions from some place like db, 
      // table etc. 
      string[] arr = GetSuggestions(t.Text); 

      if (arr.Length == 0) {// do whatever you want to} 
      else 
      { 
       var collection = new AutoCompleteStringCollection(); 
       collection.AddRange(arr); 

       this.textBox1.AutoCompleteCustomSource = collection; 
      } 
     } 
    } 
} 
関連する問題