سؤال

لدي عناصر مونترول مرتبطة بمجموعة من الطالب من النوع. داخل itemTemplate لدي مربع نص يستخدم IvalueConverter للقيام ببعض الحسابات المخصصة والمنطق. أريد تمرير كائن الطالب الفعلي إلى محول القيمة ، بدلاً من ذلك خاصية منه. كيف أقوم بذلك؟ إليك عينة من الكود الخاص بي.

 <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;
        }
} 
هل كانت مفيدة؟

المحلول

يمكنك فقط ترك المسار. بهذه الطريقة تحصل على الكائن الفعلي ملزمة.

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

أو إذا كنت تريد أن تكون صريحًا حول هذا الموضوع:

<TextBlock Text="{Binding Path=., Converter={StaticResource MyConverter}}"/>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top