서로를 부정하는 2 개의 확인란을 설정했습니다. RxUI에서 순환 참조 감지
I 볼 생각 동작이
RxUI 의해 확인되는 infintite 루프 (체크 박스를 체크 한 2 체크 한 체크 2 ...) 대신 변화의 전파가 다른 다른 체크 박스 후에 정지이었다.
순환 참조가 RxUI로 빌드 된 것이 있습니까?
using ReactiveUI;
using ReactiveUI.Fody.Helpers;
using System;
namespace rxnested
{
public class VM01 : ReactiveObject
{
[Reactive]
public bool Prop1 { get; set; }
[Reactive]
public bool Prop2 { get; set; }
public VM01()
{
this.WhenAnyValue(x => x.Prop1)
.Subscribe(x => Prop2 = !x);
this.WhenAnyValue(x => x.Prop2)
.Subscribe(x => Prop1 = !x);
}
}
}
<Window x:Class="rxnested.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:rxnested"
mc:Ignorable="d"
Title="MainWindow"
Height="350"
Width="525">
<Window.DataContext>
<local:VM01></local:VM01>
</Window.DataContext>
<StackPanel>
<CheckBox IsChecked="{Binding Prop1}"></CheckBox>
<CheckBox IsChecked="{Binding Prop2}"></CheckBox>
</StackPanel>
</Window>
나는 희망하지 않으며 의심 스럽다. IMO를 사용하면 프레임 워크가 느려집니다. 이 경우에는 다른 종류의 무한 루프를 작성하지 않는 것이 프로그래머의 임무입니다. – kenny