动态下拉菜单

时间:2018-08-01 09:55:37

标签: c# .net wpf combobox

我有一个可编辑的下拉组合框,一切正常。但我希望它只显示匹配项。例如,如果我在其中键入“ A”,则应显示以字母A开头的项目。

下面是我的组合框代码。

<ComboBox Height="23" HorizontalAlignment="Left" Margin="331,65,0,0" Name="comboBox2" VerticalAlignment="Top" Width="163" IsEditable="True" IsTextSearchEnabled="True" PreviewTextInput="ComboBox_PreviewTextInput"/>

这是组合框的绑定源

public void BindComboBox2(ComboBox comboBox2)
    {

        SqlDataAdapter da = new SqlDataAdapter("Select p_id_pk,p_name,fk_com_id FROM products ", con);
        DataSet ds = new DataSet();
        da.Fill(ds, "products");
        comboBox2.ItemsSource = ds.Tables[0].DefaultView;
        comboBox2.DisplayMemberPath = ds.Tables[0].Columns["p_name"].ToString();
        comboBox2.SelectedValuePath = ds.Tables[0].Columns["p_id_pk"].ToString();
        selected_company = ds.Tables[0].Columns["fk_com_id"].ToString();


    }

这里是PreviewTextInput处理程序代码

private void ComboBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
    {
        ComboBox comboBox = sender as ComboBox;
        comboBox.IsDropDownOpen = true;
    }

0 个答案:

没有答案