问题标签 [reactiveui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
398 浏览

.net - 更新 ReactiveCollection 的项目在将新项目添加到集合之前

我正在为我当前的项目评估 ReactiveExtensions 和 ReactiveUI。两者看起来都非常有前途。但是,我刚刚遇到了以下问题。我有一个名为 RecordSet 的类型,它定义了一个名为 Records 的 ReactiveCollection<MyRecordType> 的只读属性。我需要处理要添加到集合中的每个记录项的一些属性,以及在将新项添加到集合之前已经在集合中的其他项。一些操作基于集合中已经存在但不包括要添加的项目的项目总数。我试图观察 _records.BeforeItemsAdded 但由于某种原因 OnNext() 回调调用“为时已晚”(在集合中的项目计数已经等于最终添加到集合中的项目总数之后)。

0 投票
1 回答
173 浏览

winrt-xaml - 使用reactiveui时winrt中的Designdata

我正在尝试使用反应式 ui 构建一个 WinRT 应用程序,并且在构建设计数据时遇到以下错误:

'ReactiveUI.RxApp' 的类型初始化程序引发异常 ArgumentNullException:值不能为空。参数名称:调度器

我的设计数据如下所示:

对于我的视图模型

任何帮助,将不胜感激!

0 投票
1 回答
334 浏览

reactiveui - ReactiveUI 4.0.2 中的 CollectionExtensions.ObserveCollectionChanged() 在哪里?

ReactiveUI 3.2.0.0 曾经有实现 ObserveCollectionChanged() 方法的 CollectionExtensions 类。现在 ReactiveUI 4.0.2 下的方法在哪里?

0 投票
2 回答
1977 浏览

c# - 创建可观察的来自 observablecollection

我有 ObservableCollection<T> 并且我需要创建 observable<bool> 如果集合包含任何元素则返回 true

我试着这样做

但我不知道如何将其转换为 IObservable<bool>

如何从中创建 observable<bool> ?

0 投票
1 回答
808 浏览

reactiveui - ReactiveCollection 跨线程访问错误

我从 ReactiveCollection 示例中获取代码,在 Silverlight 5 中创建了一个简单的搜索应用程序。

但是在返回搜索结果后,当绑定到 ReactiveCollection 'Stuff' 时,我得到一个跨线程错误。当我在 WPF 中运行相同的代码时,它工作正常。如何确保在 UIThread 上完成绑定更新?

这是 XAML

这是调用绑定到 Stuff 时的调用堆栈,就在异常之前。

这是 RxApp.DeferredScheduler 的类型 - System.Reactive.Concurrency.IScheduler

RxApp.DeferredScheduler

0 投票
1 回答
217 浏览

reactiveui - ReactiveUI,Version=3.2.0.0 程序集引用问题

我正在使用 ReactiveUI 3.2。当我运行我的应用程序(基于 WPF)时,我看到以下日志消息,而应用程序似乎按预期运行(包括一些预期的 ReactiveUI 基本功能):

调用程序集:ReactiveUI,Version=3.2.0.0,Culture=neutral,PublicKeyToken=null。

LOG:此绑定在默认加载上下文中开始。LOG:未找到应用程序配置文件。LOG:使用主机配置文件: LOG:使用来自 C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config 的机器配置文件。日志:后策略参考:System.Reactive.Windows.Threading,版本=1.1.11111.0,文化=中性,PublicKeyToken=31bf3856ad364e35 日志:尝试下载新 URL 文件:///C:/WorkspaceSVSource ... N/ZemaxAll /AppFx/trunk/Src/AppFxTestApp/bin/Debug/System.Reactive.Windows.Threading.DLL。日志:正在尝试下载新的 URL 文件:///C:/WorkspaceSVN/AppFx/trunk/Src/AppFxTestApp/bin/Debug/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading.DLL。日志:正在尝试下载新的 URL 文件:///C:/WorkspaceSVN/AppFx/trunk/Src/AppFxTestApp/bin/Debug/System.Reactive.Windows.Threading.EXE。日志:

错误记录器:* WPF Rx.NET DLL 引用未添加 - 使用事件循环 * 错误记录器:添加对 System.Reactive.Windows.Threading.dll 的引用,如果您使用 WPF / SL4 / WP7 错误记录器:或考虑明确设置RxApp.DeferredScheduler 如果没有

当我实际添加对 System.Reactive.Windows.Threading.dll 的引用时,日志消息不会显示,但所有 ReactiveUI 订阅都停止工作。有任何想法吗?ReactiveUI 工作所需的额外参考的完整列表是什么?

0 投票
1 回答
997 浏览

wpf - Reactiveui 命令绑定

如果我的问题有点含糊,我提前道歉。

我正在研究和学习反应式,我发现了一个非常有趣的概念。为此,我正在使用 WPF 和 Prism 构建一个小型应用程序,但我在理解视图模型中构建命令的方式时遇到了一些困难。

我有一个例子,如果完整的话,希望能为我澄清一点:

我想要一个显示一些数据的网格。此数据是从 Web 服务加载的,我的目标是在向用户显示视图时加载一次,然后每 x 次(例如每分钟一次)或从视图中的按钮显式触发时重新加载它.

所以,我的视图模型目前看起来像:

我的问题是:

1) 如何注册一个异步命令,该命令将每 x 次触发一次,并调用内部 loadTickets 函数来重新加载 Ticket 存储?此命令也将由公开的命令 LoadTickets 触发。

2)在函数中,loadTickets我每次都会从服务中获取一个List。如何将此列表转换为向 UI 公开的 ReactiveCollection。

0 投票
1 回答
1373 浏览

c# - 可观察的依赖属性

我是 Reactive Extension 的粉丝,尤其是 ReactiveUI 我在其他解决方案的项目中拥有 DP,而不是我的。我想将其转换为包含此 DP 的可观察类是内部的并从 DependencyObject 派生,因此我不能使用 Class.ObservableFromDP 因为类必须从 FrameworkElement 派生

我有这个解决方案

但是目标类是内部的,我无法访问此类中的属性 DependencyProperty

我怎样才能从这个属性中获得 Observable

有没有什么方法

obj.ObservableFromDP(x=>x.ActiveEditor)处理不是从 FrameworkElement 派生的 obj?

0 投票
1 回答
1439 浏览

wpf - 任何依赖属性的响应式用户界面

我有两个文本框和 ReactiveUI 的简单 WPF 应用程序。我尝试使用 WhenAny 查找第一个文本框的依赖属性

我的表格代码是

但是当我更改 TextBox 文本时,它不会显示给我

有什么问题?

0 投票
2 回答
434 浏览

reactiveui - ReactiveUI 4.2.1 NuGet 包

我正在尝试将 ReactiveUI NuGet 包添加到一个新的 VS2012 C# WPF .NET 4.5 项目中,但 NuGet 包管理器报告了一个问题“无法解决依赖关系 'Microsoft.Bcl.Async.NotBeta'”。ReactiveUI NuGet 包中的依赖项是否错误,或者是否已删除 Microsoft.Bcl.Async.NotBeta 包?我可以成功安装 Rx-Main,它显然不依赖于这个 Async.NotBeta 包。

这是包管理器控制台的确切错误: