Domanda

In WPF, è possibile che un DataTrigger si associ a una proprietà allegata?

Essenzialmente, desidero utilizzare un convertitore su una proprietà collegata per fornire uno stile quando una particolare regola di convalida è stata infranta.Sto utilizzando il markup come il seguente:

<DataTrigger Binding="{Binding Path=Validation.Errors, 
                       RelativeSource={RelativeSource Self}, 
                       Converter={StaticResource RequiredToBoolConverter}}" 
                       Value="True">
  <Setter Property="Background" Value="LightGreen" />
</DataTrigger>

Tuttavia, quando viene eseguito, ottengo quanto segue:

Errore System.Windows.Data:39:Errore del percorso BindingExpression:Proprietà "Convalida" non trovata su "Oggetto" '' TextBox '(name =' ')'.BindingExpression:Path=Validation.Errors;DataItem='Casella di testo' (Nome='');L'elemento target è "TextBox" (name = '');La proprietà target è "notarget" (tipo "oggetto")

Se cambio il percorso di associazione DataTrigger in "Testo", non ottengo l'errore di associazione dati (ma ovviamente non fornisce il comportamento che sto cercando).

È stato utile?

Soluzione

È necessario racchiudere la proprietà tra parentesi:

<DataTrigger Binding="{Binding Path=(Validation.Errors).YourAttachedProperty,...
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top