Pergunta

Eu criei um simples conversor para concatenar o texto de quatro caixas de texto em meu aplicativo WPF.

Aqui está o Converter:

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[] {  };
   }

}

Em XAML Eu uso este código:

<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 estiver em depuração, esse erro aparece na caixa de texto CodeBoatTxt:. "DependecyProperty.UnsetValue"

O que está errado com o meu conversor?

Foi útil?

Solução

DependencyProperty.UnsetValue é passado para o conversor quando um Binding é válido, mas não tem o seu valor definido ainda. Gostaria de verificar os Bindings compreendendo seu MultiBinding em isolamento e garantir que eles estão corretos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top