7

我使用带有值转换器的多重绑定来提供我的DataContext. 这是 XAML 的一个片段;

<DataGrid.Columns>
    <DataGridTextColumn x:Name="Column1"
                        SortMemberPath="{Binding Path=SomeDataModelProperty}">
    <DataGridTextColumn.Binding>
        <MultiBinding Converter="{StaticResource MyCustomConverter}">
            <Binding Path="SomeDataModelProperty" />
            <Binding RelativeSource="{RelativeSource Self}" Path="ActualWidth" />
            <!-- Other bindings -->
        </MultiBinding>
    </DataGridTextColumn.Binding>
</DataGridTextColumn>

上的绑定SortMemberPath是这样的,我可以按我的属性排序DataContext。但是,我在输出窗口上收到错误

Cannot find governing FrameworkElement or FrameworkContentElement for target element.

谷歌搜索此问题会产生使用DevExpress 的 DXGrid的结果,但不会产生使用标准 WPF 数据网格的结果。有谁知道为数据网格列提供排序的正确方法?

4

1 回答 1

11

我想通了,感谢这篇文章。最后它很简单;

<DataGridTextColumn x:Name="Column1"
                    SortMemberPath="SomeDataModelProperty">

即不使用绑定,直接指定属性名即可。

于 2013-04-26T14:20:09.077 回答