gpt4 book ai didi

c# - XamDataGrid 中的自定义排序以进行多重绑定(bind)

转载 作者:太空宇宙 更新时间:2023-11-03 13:11:22 26 4
gpt4 key购买 nike

我有一个 multiBinding 效果很好,
我希望能够对特定列进行排序,它显示 w:width、h:height
据我所知,我需要构建一个自定义 IComparer 类来进行比较。
这是我的 XAML

<igWPF:UnboundField Label="Output&#10;Width/Height" Width="auto">
<igWPF:Field.Settings>
<igWPF:FieldSettings SortComparer="{StaticResource SortWidthHeightComparer }">
<igWPF:FieldSettings.CellValuePresenterStyle>
<Style TargetType="{x:Type igWPF:CellValuePresenter}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type igWPF:CellValuePresenter}" >
<TextBlock Margin="3">
<TextBlock.Text>
<MultiBinding Converter="{StaticResource settingsBdsToStringConverter}">
<Binding Path="DataItem.Key"/>
<Binding Path="DataContext.SelectedPipeMode" RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType={x:Type igWPF:XamDataGrid}}"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</igWPF:FieldSettings.CellValuePresenterStyle>
</igWPF:FieldSettings>
</igWPF:Field.Settings>
</igWPF:UnboundField>

这是我的多绑定(bind)转换器

class SettingsOutputResToStringConverter : IMultiValueConverter
{

public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
if (values[1] is Mode && values[0] is ConfigurationKey)
{
var pMode = (Mode)values[1];
var key = values[0] as ConfigurationKey;
var res = key.GetOutput(pMode);
return String.Format("W: {0}, H: {1}", res.Width, res.Height);
}
return String.Empty;
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
return null;
}
}

但是我的问题是如何将多重绑定(bind)结果传递给 Comparer 类

class SortWidthHeightComparer : IComparer
{
public int Compare(object x, object y)
{
return 1;
}
}

object xobject y 始终为 null

最佳答案

吉拉德,我找到了这篇文章: http://www.infragistics.com/community/forums/t/17878.aspx

这似乎是一个简单的解决方案。我将尝试使用相同的方法来过滤记录。

关于c# - XamDataGrid 中的自定义排序以进行多重绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28480884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com