url -autocomplete wpf

时间:2012-11-26 19:16:37

标签: c# .net wpf autocomplete

在我当前的wpf项目中使用C# 我做了一个加载页面的方法,所以当你选择它时会从源代码中提取内容, 您希望的特定div或特定table,当您首先需要从列表框中选择是否要加载要提取的本地文件,或者您想要从中加载页面时interet。

然后我想到一个想法,如果通过互联网选​​择自动完成,将帮助用户,因为我学习如何在asp.net WebForms中实现它 它不是那么复杂,因为我可以使用ajax来定位asp:TextBox。但是必须能够通过Wpf完成它。

1)是否有可以将我的应用程序绑定为数据源的url列表源?

2)在搜索该网址列表时想到了它:  我怎么能实现自动完成,是否可以使用相同的方法 asp.net使用ajax或其他一些简单的实现?

1 个答案:

答案 0 :(得分:2)

使用WPF Toolkit中的AutoCompleteBox:

<Page x:Class="WPFApplication.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:toolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input.Toolkit">

    <toolkit:AutoCompleteBox x:Name="autocompleteCtrl"
        Populating="autocompleteCtrl_Populating" />
</Page>
  1. 您可以通过为ItemSource指定预定义列表来获取任何类型的数据源:

    autocompleteCtrl.ItemsSource = new List<string>{"asd","abs","vfr"};
    
  2. 或者在Populating事件处理上动态构建自动完成列表:

    private void autocompleteCtrl_Populating(object sender, PopulatingEventArgs e)
    {
        string text = autocompleteCtrl.Text;
    
        //build list
        var list = new List<string>();
        autocompleteCtrl.ItemsSource = candidates;
        autocompleteCtrl.PopulateComplete();
    }