【问题标题】:reactiveui whenany on dependency property任何依赖属性的响应式用户界面
【发布时间】:2012-12-18 04:22:21
【问题描述】:

我有一个带有两个文本框和 ReactiveUI 的简单 WPF 应用程序。我尝试使用 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 文本时,它不会显示给我

有什么问题?

【问题讨论】:

  • ReactiveUI 是一个 MVVM 框架。你的 ViewModel 在哪里?
  • 这是错误的演示,我有视图模型,但这里显示太复杂了
  • 使用上述方法,我无法得到任何错误。它按预期工作。

标签: wpf system.reactive reactiveui


【解决方案1】:

试试这个:

this.WhenAny(x => x.Text1.Text, x => x.Value);

如果它不起作用,我相信你被 ReactiveUI 4.1 中的一个错误所困扰。升级到 4.2(几天前发布)可能会修复它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-13
    • 2010-11-03
    • 2016-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多