【问题标题】:AutoSuggestBox query selected textboxAutoSuggestBox 查询选定的文本框
【发布时间】:2015-11-09 11:28:50
【问题描述】:

我正在使用 AutoSuggestBox 控件来显示一些结果,例如:

                <AutoSuggestBox Width="192"
                                PlaceholderText="Search"
                                HorizontalAlignment="Right"
                                ItemsSource="{Binding SearchResults}">
                    <i:Interaction.Behaviors>
                        ...
                    </i:Interaction.Behaviors>
                    <AutoSuggestBox.ItemTemplate>
                        <DataTemplate>
                            <TextBlock>
                                <Run Text="{Binding Name}" />
                                <Run Text="(" /><Run Text="{Binding Origin_Country[0]}" /><Run Text=")" />
                            </TextBlock>
                        </DataTemplate>
                    </AutoSuggestBox.ItemTemplate>

SearchResults(ItemsSource 绑定)是这样定义的:

    private ObservableCollection<ShowModel> _searchResults = default(ObservableCollection<ShowModel>);
    public ObservableCollection<ShowModel> SearchResults { get { return _searchResults; } set { Set(ref _searchResults, value); } }

ShowModel是具有可绑定属性的基本模型。

我遇到的问题是,当我单击其中一个结果时,它会用模型的路径填充文本框,如下所示:

在选择条目之前:

选择条目后:

我想要的是为文本框定义某种模板以绑定到模型的属性之一,这样就不会显示模型路径。这甚至可能吗?

【问题讨论】:

  • 我自己不是 Windows 8 手机开发人员,但您可以点击 SuggestionChosen 事件,在此处取消选择并手动设置文本框的内容吗?

标签: c# xaml mvvm uwp


【解决方案1】:

TextMemberPath 属性设置为您要显示的模型属性之一。

TextMemberPath="someproperty"

【讨论】:

  • 哇,比我想象的要容易。谢谢!
猜你喜欢
  • 2014-10-10
  • 1970-01-01
  • 2019-11-18
  • 1970-01-01
  • 2012-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多