Ich versuche, eine DataTrigger
basierend auf den Vergleichswerte von zwei Zellen in der gleichen Zeile festzulegen. Meine Schwierigkeit besteht darin, dass die Zellen keine Eigenschaften desselben Artikels sind (und nicht sein können). Das Gitter wird in Code-Behind generiert.Datentrigger-Vergleich zweier Spaltenwerte
public class EqualityConverter : IValueConverter
{
public object Convert(object values, Type targetType, object parameter, CultureInfo culture)
{
string currentValue = values.ToString();
string compareToValue = Column[2].Item.Value.ToString(); //This clearly doesn't work, but it's the intent I'm after.
if (currentValue.Equals(compareToValue))
return false;
return true;
}
XAML (Binding Path=Value)
funktioniert super. (ConverterParameter = Column2.Value)
ist, wo mein Problem ist. Irgendwelche Vorschläge, wie ich das abrufen kann ???
<DataTrigger Binding="{Binding Path=Value, Converter={StaticResource EqualityConverter}}" Value="True">
<Setter Property="Background" Value="Yellow" />
</DataTrigger>
Der Grund, warum ich nicht auf die Elementeigenschaft binden kann, ist der Zellenwert ein Element von selbst: Also ich versuche, auf die Eigenschaft „Wert“ von Spalte2 zu vergleichen.
public class GenericProperty : INotifyPropertyChanged
{
public GenericProperty(string name, object value)
{
Name = name;
Value = value;
}
public string Name { get; private set; }
public object Value { get; set; }
haben Sie die Antwort – AnjumSKhan
Hey Anjum, Entschuldigung für meine Verzögerung bei der Erteilung einer Antwort. Zuerst vielen Dank für Ihre Hilfe. Ich habe es gesehen, obwohl mein erster Versuch erfolglos war. ABER - ich bin mit diesem Loaded-Event bis jetzt nicht vertraut und möchte es zumindest noch einmal frisch machen. Wird in Kürze folgen. – ctalley5