2009-08-25 7 views
2

Ich habe einen einfachen Konverter erstellt, um den Text von vier TextBoxen in meiner WPF-App zu verketten. HierDependencyProperty.UnsetValue wird angezeigt, wenn Sie einen IMultiValueConverter verwenden

ist der Konverter:

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 verwende ich diesen Code:

<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> 

Wenn im Debug Dieser Fehler erscheint in der CodeBoatTxt Textbox: "DependecyProperty.UnsetValue".

Was ist falsch an meinem Konverter?

Antwort

2

DependencyProperty.UnsetValue wird in den Konverter übernommen, wenn Binding gültig ist, aber noch nicht seinen Wert hat. Ich würde die Binding s umfassend Ihre MultiBinding isoliert überprüfen und sicherstellen, dass sie korrekt sind.

+0

HI Kent, Sie haben Recht, ich überprüfe meinen Code und fand einen Fehler für meine Ablenkung. Danke. Prost – JayJay

Verwandte Themen