Подтвердить что ты не робот

WPF передает родительский объект привязки к конвертеру

У меня есть ItemControl, связанный с набором типа Student. Внутри ItemTemplate у меня есть TextBox, который использует IValueConverter для выполнения пользовательских вычислений и логики. Я хочу передать фактический объект Student в преобразователь значений, а не его свойство. Как я могу это сделать? Вот пример моего кода.

 <ItemsControl ItemsSource="{Binding StudentList}">
                            <ItemsControl.ItemTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding Name}" />
                                    <TextBlock Text="{Binding ????, Converter={StaticResource MyConverter}}" />
                                </DataTemplate>
                            </ItemsControl.ItemTemplate>
 </ItemsControl>

В коде у меня есть это

public class MyValueConverter : IValueConverter
{
      public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            // I want 'value' to be of type Student.
            return null;
        }
} 
4b9b3361

Ответ 1

Вы можете просто оставить путь. Таким образом, вы попадаете в фактический объект.

<TextBlock Text="{Binding Converter={StaticResource MyConverter}}"/>

или если вы хотите быть явным:

<TextBlock Text="{Binding Path=., Converter={StaticResource MyConverter}}"/>