Chrome 有一个很棒的功能:您可以搜索设置页面,Chrome 只显示相关设置,或者,如果您需要打开一个窗口,还有一点提示。我真的很喜欢这个功能,并希望在我的开源工具中实现它。
从技术上讲,这怎么可能实现?
Chrome 有一个很棒的功能:您可以搜索设置页面,Chrome 只显示相关设置,或者,如果您需要打开一个窗口,还有一点提示。我真的很喜欢这个功能,并希望在我的开源工具中实现它。
从技术上讲,这怎么可能实现?
您可以尝试对设置集合使用集合视图,并在更改搜索字符串后对其进行过滤。
var settings = new ObservableCollection<SettingsClassType>();
SettingsCollView = CollectionViewSource.GetDefaultView(settings);
SettingsCollView.Filter += (o) => {
var setting = (SettingsClassType)o;
return string.IsNullOrEmpty(YourSearchInput)
|| setting.Name.Contains(YourSearchInput);
}
private string yourSearchInput;
public bool YourSearchInput
{
get { return yourSearchInput; }
set
{
if (value == yourSearchInput) {
return;
}
yourSearchInput= value;
// filer your collection here
SettingsCollView.Refresh();
this.NotifyPropertyChanged("YourSearchInput");
}
}
希望有帮助