如何在其他项目视图模型(UWP)中更新绑定属性?

时间:2019-03-07 08:56:24

标签: c# uwp reactiveui

我有UWP UI项目和其他具有逻辑(ViewModels)的.NET Standard项目。我将字符串从viewmodel绑定到视图。

        <TextBlock Text="{Binding ConsoleData}" HorizontalAlignment="Center"
               FontSize="18"/>

通过事件控制台更新数据,该事件调用其他线程。

    [Reactive] public string ConsoleData { get; set; } = "";

    public TestViewModel()
    {
        _testLogicController = new TestLogicController();
        _testLogicController.OnMessage += OnMessageUpdate;
    }

    private void OnMessageUpdate(object sender, EventArgs args)
    {
        ConsoleData += (string)sender;
        ConsoleData += "\n";
    }

启动后,程序以exception落入。由于viewmodel存在于其他项目中,因此无法调用Core.Dispather。请告诉我,如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

Reactive.UI ObserveOn(RxApp.MainThreadScheduler)

解决