Im пытается достичь чего-то вроде WPF DataGrid Grouping with sums and other fields, чтобы подвести итог свойства «количество» из элементов в группе. Но он бросает исключение в цикле Еогеаспа, что не может конвертировать 'пункты' к моему типу ('OrderItem' из которых я думал, что элементы должны быть ...)
C#WPF Converter не может получить доступ к базовому свойству
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value is ReadOnlyObservableCollection<Object>)
{
var items = ((ReadOnlyObservableCollection<Object>) value);
Decimal total = 0;
foreach (OrderItem gi in items)
{
total += gi.quantity;
}
return total.ToString();
}
return "0";
}
XAML
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander>
<Expander.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Name}" Margin="5"/>
<TextBlock Text="Count" Margin="5" />
<TextBlock Text="{Binding Path=Items, Converter={StaticResource additionConverter}}" Margin="5"/>
</StackPanel>
</Expander.Header>
<ItemsPresenter />
</Expander>
</ControlTemplate>
и ресурс
<local:AdditionConverter x:Key="additionConverter" />
, как получить доступ к базовому элементу «значения»? Я поставил точку останова, и он есть. Извините, если я что-то испортил, я новичок в WPF.
Каков тип предмета, который он показывает, если не OrderItem? – AnjumSKhan
Невозможно неявно преобразовать тип «MS.Internal.Data.CollectionViewGroupInternal» в «Plan_Produkcji_Beta.OrderItem» – kasperro
Я предполагаю, что это будет связано с вашей привязкой, поскольку я думаю, что ваша привязка к свойству элемента управления WPF скорее чем непосредственно к данным. Что вы можете предоставить xaml для элемента с помощью конвертера? –