DependencyProperty.UnsetValue appare quando si utilizza un IMultiValueConverter
-
19-09-2019 - |
Domanda
ho creato un semplice convertitore per concatenare il testo di quattro caselle di testo nel mio WPF app.
Ecco il convertitore:
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[] { };
}
}
in XAML io uso questo codice:
<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>
Quando in di debug, questo errore viene visualizzato nella casella di testo CodeBoatTxt:. "DependecyProperty.UnsetValue"
Cosa c'è di sbagliato con il mio convertitore?
Soluzione
DependencyProperty.UnsetValue
viene passato nel convertitore quando un Binding
è valida, ma non hanno il suo valore ancora fissato. Vorrei controllare le Binding
s che comprende il tuo MultiBinding
in isolamento e garantire che siano corrette.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow