0

C# Winforms には、AutoCompleteMode のテキスト ボックスがあります。ユーザーがいくつかの文字を入力すると、候補リストが正しく表示されます。リスト内の項目を (キーボード) UP および DOWN キーを使用して選択すると、項目を選択できませんでした。平均を選択すると、リストの最初の項目が取得されます。

提案してください..

ここに私のコード...

private void txt_Name_TextChanged(object sender, EventArgs e)
        {
            try
            {
                SqlDataReader datareader = qu.GetValue("English_Short");
                AutoCompleteStringCollection local = new AutoCompleteStringCollection();
                if (datareader.HasRows == true)
                {
                    while (datareader.Read())
                        local.Add(datareader["English_Short"].ToString());
                }
                txt_Name.AutoCompleteMode = AutoCompleteMode.Suggest;
                txt_Name.AutoCompleteSource = AutoCompleteSource.CustomSource;
                txt_Name.AutoCompleteCustomSource = local;
            }
            catch (Exception)
            { }
        }
4

1 に答える 1

1

Text Changed の代わりに Form Load イベントに入れない理由:

  private void Form1_Load(object sender, EventArgs e)
  {

      try
            {
                SqlDataReader datareader = qu.GetValue("English_Short");
                AutoCompleteStringCollection local = new AutoCompleteStringCollection();
                if (datareader.HasRows == true)
                {
                    while (datareader.Read())
                        local.Add(datareader["English_Short"].ToString());
                }
                txt_Name.AutoCompleteMode = AutoCompleteMode.Suggest;
                txt_Name.AutoCompleteSource = AutoCompleteSource.CustomSource;
                txt_Name.AutoCompleteCustomSource = local;
            }
            catch (Exception ex)
            { 
              MessageBox.Show(ex.Message);
            }
        }

  }
于 2013-07-04T22:52:51.300 に答える