Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# UWP:使用领域进行实时查询和搜索_C#_Uwp_Realm - Fatal编程技术网

C# UWP:使用领域进行实时查询和搜索

C# UWP:使用领域进行实时查询和搜索,c#,uwp,realm,C#,Uwp,Realm,我使用Realm作为我的主数据库和同步引擎,我的问题是如何进行实时搜索查询 例如,当我使用 var _age= 7; Instance.All<Dog>().Where(d => d.Age == _age).AsRealmCollection(); var\u age=7; Instance.All().Where(d=>d.Age==\u Age).AsRealmCollection(); 并将我的listview绑定到它,我需要在更改\u age变量时更新我的视图。换

我使用Realm作为我的主数据库和同步引擎,我的问题是如何进行实时搜索查询

例如,当我使用

var _age= 7;
Instance.All<Dog>().Where(d => d.Age == _age).AsRealmCollection();
var\u age=7;
Instance.All().Where(d=>d.Age==\u Age).AsRealmCollection();
并将我的listview绑定到它,我需要在更改
\u age
变量时更新我的视图。换句话说,我想对我的数据库进行“动态”查询。当我想寻找不同年龄段的“狗”时,我想更新我的视图。但当我再次运行此查询并将新集合分配给ViewModel时,我的视图不会更新

我该怎么办

更新:

在这里,您可以获得一个示例代码,以便重现此问题:


另外,我必须告诉您,默认情况下,
IRealmCollection
实现了
INotifyPropertyChanged
,因此,如果您使用“写入事务”将任何项目添加到集合中,视图将被更新。可以找到更多信息

我已经检查了您的代码示例,我发现
Dogz
将使用
Instance.All()重新创建,其中(z=>z.Age==nxt).AsRealmCollection()。所以需要双向绑定模型

<ListView x:Name="itemListView" ItemsSource="{x:Bind Dogz,Mode=TwoWay}">


这是关于bind的,您可以参考。

对于ListView,
ObservableCollection
可以用来动态更新源代码,我无法使用此段代码重现您的问题,您能否共享一个简单的示例来重现此问题?@NicoZhu MSFT我添加了一个示例代码,其中包含一些详细信息。请看一看请尝试使用双向模式。我已经试过了。没有结果。在添加
Mode=TwoWay
之前,
Change
看起来不起作用。添加
Mode=TwoWay
后,该按钮在我的一侧起作用。