- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我在 Windows Phone 8.1 上的 AutoSuggestBox
中显示结果时遇到问题。我正在使用 MVVM Light 将我的项目源绑定(bind)到 Autosuggestbox。
<AutoSuggestBox Header="Van" Text="{Binding SearchTextFrom, Mode=TwoWay}" ItemsSource="{Binding suggestionFrom}">
<AutoSuggestBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding description}"/>
</DataTemplate>
</AutoSuggestBox.ItemTemplate>
<i:Interaction.Behaviors>
<core:EventTriggerBehavior EventName="TextChanged">
<core:InvokeCommandAction Command="{Binding SearchChangedFrom}">
</core:InvokeCommandAction>
</core:EventTriggerBehavior>
</i:Interaction.Behaviors>
</AutoSuggestBox>
我的 View 模型
private RelayCommand _SearchChangedFrom;
public RelayCommand SearchChangedFrom
{
get
{
return _SearchChangedFrom ?? (_SearchChangedFrom = new RelayCommand(
async () =>
{
if (string.IsNullOrWhiteSpace(user.countrycode))
{
Debug.WriteLine("Could not autocomplete the country because there was no country code provided.");
return;
}
var predictions = await _Service.GetGoogleMapsSuggestionFromQuery(user.countrycode, SearchTextFrom);
suggestionFrom = predictions;
}));
}
}
private List<Prediction> _suggestionFrom;
public List<Prediction> suggestionFrom
{
get { return _suggestionFrom; }
set
{
Set<List<Prediction>>(() => suggestionFrom, ref _suggestionFrom, value);
Debug.WriteLine(suggestionFrom.Count + " were received. Displayong them in the autosuggestbox");
foreach (Prediction prediction in _suggestionFrom)
{
Debug.WriteLine(("Predicition: " + prediction.description));
}
}
}
对象已设置且不为空。
那他们为什么不出现呢?
更新我的模型
public class Prediction : ObservableObject
{
private string _description;
public string description
{
get { return _description; }
set{Set<string>(() => description, ref _description, value);}
}
private string _id;
public string id
{
get { return _id; }
set { Set<string>(() => id, ref _id, value); }
}
private List<MatchedSubstring> _matchedSubstrings;
public List<MatchedSubstring> matched_substrings
{
get { return _matchedSubstrings; }
set{Set<List<MatchedSubstring>>(() => matched_substrings, ref _matchedSubstrings, value);}
}
private string _place_id;
public string place_id
{
get { return _place_id; }
set { Set<string>(() => place_id, ref _place_id, value); }
}
private string _reference;
public string reference
{
get { return _reference; }
set { Set<string>(() => reference, ref _reference, value); }
}
private List<Term> _terms;
public List<Term> terms
{
get { return _terms; }
set { Set<List<Term>>(() => terms, ref _terms, value); }
}
private List<string> _types;
public List<string> types
{
get { return _types; }
set { Set<List<String>>(() => types, ref _types, value); }
}
public override string ToString()
{
return this.description;
}
}
最佳答案
使用
public ObservableCollection<Prediction> SuggestionFrom { get; set; }
代替
public List<Prediction> SuggestionFrom { get; set; }
ObservableCollection 通知用户界面有关您的预测的任何更改(添加或删除)
关于c# - AutoSuggestBox 不显示结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28988040/
在 AutoSuggestBox 中选择项目而不是它绑定(bind)到属性的属性值。 这是我的 xaml。
我正在使用 AutoSuggestBox 控件来显示一些结果,例如: ...
我在 Windows Phone 8.1 上的 AutoSuggestBox 中显示结果时遇到问题。我正在使用 MVVM Light 将我的项目源绑定(bind)到 Autosuggestbox。
我正在使用 WinJS.UI.AutoSuggestBox。每次当我从 suggestCollection 中选择项目时,该项目就会出现在输入中,但是当我单击其他位置(输入失去焦点)时,该项目就会从输
我有一个可见性设置为 Collapsed 的 AutoSuggestBox。在同一 View 页面中,我有一个按钮。单击按钮时,我想显示 AutoSuggestBox。当查询已提交或 AutoSugg
我正在使用此链接上第一个示例中的 WinJS.UI.AutoSuggestBox:http://try.buildwinjs.com/#searchbox:simplelist1 我复制了完全相同的代
我在 ContentDialog 中有一个 AutosuggestBox,如下所示:
当我向 AutoSuggestBox 查询图标添加样式时,它会消失。任何解决方案?
我刚刚发现 SuggestionChosen 在 AutoSuggestBox 中的第一个项目使用键盘向上/向下键突出显示时触发。 实际上,我无法选择列表中第一个以外的任何内容。 这适用于鼠标。 键盘
打开建议列表时,向上/向下箭头键会自动触发 SuggestionChosen 事件。我想知道是否有办法拦截这个按键?我曾尝试使用 KeyDown 和 KeyUp 事件来捕捉这些按键,但 Suggest
我刚刚开始学习 UWP 和 xaml。将 AutoSuggestBox 添加到侧边导航面板的正确方法是什么? (很抱歉提前错误的代码格式,复制和粘贴不是很好) 我的 Main.xaml 有一个我已设置
我在 UWP 中调用 AutoSuggestBox 控件的 QuerySubmitted 命令。 该命令绑定(bind)到 View 模型中的 ICommand。 问题是它需要接受纯 UI 的 Aut
我正在尝试在 Windows Phone 8.1 XAML 应用程序中使用标准 AutoSuggestBox,但它的行为非常奇怪。 在一个简单的演示中,我有集合 Items = new Observa
我正在使用 MVVM 模式将 ViewPage 中的 AutoSuggestBox 的属性绑定(bind)到我的 ViewModel。当我在 Grid 或 stackPanel 中时,这可以正常工作。
在 UWP/Template 10 应用中,我们需要 AutoSuggestBox 来更新 ViewModel 上的 Customer 属性。 AutoSuggestBox 按预期过滤并从客户列表中选
我是一名优秀的程序员,十分优秀!