يظهر dependencyproperty.unsetvalue عند استخدام imultivalueconverter
-
19-09-2019 - |
سؤال
قمت بإنشاء محول بسيط لتسلسل نص أربعة مربعات في تطبيق WPF الخاص بي.
هنا هو المحول:
public class FourString:IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
return string.Format("{0}{1}{2}{3}", values[0], values[1], values[2], values[3]);
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
return new object[] { };
}
}
في xaml استخدم هذا الرمز:
<local:FourString x:Key="converter"/>
<TextBox Grid.ColumnSpan="4" Margin="95,7.5,71.25,3.75" Name="CodeBoatTxt" >
<TextBox.Text>
<MultiBinding Converter="{StaticResource converter}" >
<Binding ElementName="CountryStringaTxt" Path="Text" />
<Binding ElementName="CityStringaTxt" Path="Text" />
<Binding ElementName="ServiceStringaTxt" Path="Text" />
<Binding ElementName="DurationStringaTxt" Path="Text" />
</MultiBinding>
</TextBox.Text>
</TextBox>
عند في تصحيح الأخطاء، يظهر هذا الخطأ في مربع نص BodyBostxt: "dreedecyproperty.unsetvalue".
ما هو الخطأ في محولي؟
المحلول
DependencyProperty.UnsetValue
يتم تمريرها إلى المحول عندما Binding
صالحة، ولكن ليس لديك مجموعة قيمتها بعد. أود التحقق من Binding
تضم الخاص بك MultiBinding
بمعزل عن العزلة وضمان صحيحة.
لا تنتمي إلى StackOverflow