値コンバーターでマルチバインディングを使用して、 内の項目のコレクションを視覚的に表示します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 データ グリッドを使用した結果は得られません。データグリッド列にソートを提供する正しい方法を知っている人はいますか?