こんにちは、私はComboBox
WPFを持っています
<ComboBox x:Name="Select_Food" Grid.ColumnSpan="3" Margin="10" Text="" IsEditable="True"
ItemsSource="{Binding}" KeyUp="Select_Food_KeyUp" IsTextSearchEnabled="false" />
ユーザーがテキスト ボックスに入力している間、オプションとしてデータベースから情報を取得しています。現在、すべてが機能しますが、唯一の問題は、テキストボックスに最初の文字を入力すると、リスト内の項目のいずれかがその文字で始まる場合、その文字が自動的に強調表示されることです。このため、それ以上入力すると最初の文字が上書きされます。これは問題です。この最初のハイライトを停止するにはどうすればよいですか。「グーグル検索のような」コンボボックスを実現しようとしています。
これがコードです。助けてください。
// While typing this function is called on every keyup stroke
private void Select_Food_KeyUp(object sender, KeyEventArgs e)
{
try
{
SqlCeCommand command = new SqlCeCommand("SELECT FOODITEM_RS FROM FOOD WHERE FOODITEM_RS LIKE @fitem", thisConnection);
command.Parameters.AddWithValue("@fitem", "%" + Select_Food.Text + "%");
SqlCeDataAdapter da = new SqlCeDataAdapter(command);
DataSet ds = new DataSet();
thisConnection.Open();
da.Fill(ds, "FOOD");
Select_Food.ItemsSource = ds.Tables[0].DefaultView;
Select_Food.DisplayMemberPath = ds.Tables[0].Columns["FOODITEM_RS"].ToString();
}
catch (SqlCeException x)
{
MessageBox.Show(x.ToString());
}
//Open dropdown menu
Select_Food.IsDropDownOpen = true;
thisConnection.Close();
}