使用基于ReactiveUI C#的绑定绑定到DataGridColumn

使用基于ReactiveUI C#的绑定绑定到DataGridColumn,c#,wpf,data-binding,reactiveui,C#,Wpf,Data Binding,Reactiveui,我正在学习在WPF中使用ReactiveUI。我有一个应用程序,它有一个IObservableCollection,我正在绑定到DataGrid <DataGrid Grid.Row="3" Grid.ColumnSpan="2" AutoGenerateColumns="False" ScrollViewer.VerticalScrollBarVisibility="Visible" x:Name="validationResults" HorizontalAlignment="

我正在学习在WPF中使用ReactiveUI。我有一个应用程序,它有一个IObservableCollection,我正在绑定到DataGrid

    <DataGrid Grid.Row="3" Grid.ColumnSpan="2" AutoGenerateColumns="False" ScrollViewer.VerticalScrollBarVisibility="Visible" x:Name="validationResults" HorizontalAlignment="Stretch" IsReadOnly="True" SelectionMode="Extended" SelectionUnit="Cell">
        <DataGrid.Columns>
            <DataGridTextColumn Header="Item Id" x:Name="vrContractID"  Binding="{Binding Path=ItemId, Mode=OneWay}" MinWidth="50" />
            <DataGridTextColumn Header="Item #"  Binding="{Binding Path=ItemNumber, Mode=OneWay}" MinWidth="50"/>
            <DataGridCheckBoxColumn Header="Valid?" Binding="{Binding Path=IsValid, Mode=OneWay}" MinWidth="5"/>
            <DataGridTextColumn Header="Error Code"  Binding="{Binding Path=ErrorCode, Mode=OneWay}" MinWidth="50"/>
            <DataGridTextColumn Header="Error Message"  Binding="{Binding Path=ErrorMessage, Mode=OneWay}" Width="*"/>
        </DataGrid.Columns>
    </DataGrid>
或者这个:

this.OneWayBind()
我在绑定数据模板和多重绑定时也遇到过类似的问题,这让我想知道,在ReactiveUI/MVVM的设计模式中,我是否遗漏了一些东西

任何帮助都将不胜感激


PS:如果我必须用xaml绑定,为什么我不能用xaml绑定呢?有两个地方可以进行绑定,感觉有点奇怪

使用DataTemplates的解决方案是不设置一个,rxui绑定将自动提供一个,并查找为视图模型注册的
IViewFor
并显示该视图

多重绑定您可以使用可观察的
。当有任何
运算符时,将相关测试
与多重
组合,然后使用
BindTo


使用数据网格,您可以通过编程方式生成列,然后在这些列上使用rxui绑定。在过去,我使用了构建器模式。DataGrid开箱即用并不容易与rxui绑定结合

如果DataGrid不适合RxUI,您能否解释原因并提供替代方法?我选择datagrid是因为我希望以网格格式显示项目列表,并允许用户利用内置的int排序。它也是在考虑在网格中显示结果时想到的第一个控件。我没有在编辑模式下使用网格,所以我想知道是否有更好的面向显示的控件。
this.OneWayBind()