我有简单的WPF应用程序,有两个文本框和ReactiveUI。我尝试使用WhenAny
查找第一个文本框的依赖项属性 public partial class MainWindow : Window
{
public MainWindow()
{
RxApp.DeferredScheduler = DispatcherScheduler.Current;
InitializeComponent();
Text1.WhenAny(i => i.Text, i => i.Value).Subscribe(_ => SomeMethod());
}
void SomeMethod()
{
MessageBox.Show("Boom!");
}
}
我的表单代码是
<Window x:Class="TestObservable.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<TextBox Name="Text1" Grid.Column="0"></TextBox>
<TextBox Name="Text2" Grid.Column="1"></TextBox>
</Grid>
但当我更改TextBox Text时,它不会显示给我
有什么问题?
答案 0 :(得分:3)
试试这个:
this.WhenAny(x => x.Text1.Text, x => x.Value);
如果它不起作用,我相信您会被ReactiveUI 4.1中的错误所困扰。升级到4.2(几天前发布)可能会解决它。