4
我使用帶值轉換器的多重綁定來提供我的DataContext
中項目集合的直觀顯示。這裏是XAML的片段;如何排序使用MultiBinding轉換器的DataGridTextColumn
<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.
谷歌搜索這個問題得到使用DXGrid by DevExpress結果上的錯誤,而不是一個使用標準的WPF數據網格。有誰知道提供排序到數據網格列的正確方法嗎?
這對我有點幫助。但是,我需要根據轉換器提供的值進行排序,而不是數據中的固定路徑(我的轉換器根據第三個屬性給出了兩個不同的屬性之一)。建議? – 2015-08-17 20:20:46
看起來'SortMemberPath'只是一個字符串,網格控件本身會將其解析爲列名,所以綁定不是前進的方向。我可以建議的唯一事情就是將網格控件綁定到預先分類的集合,比如通過「CollectionViewSource」或其他東西。 – Steztric 2015-08-18 16:30:04