Binding.Converter Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das Konverterobjekt ab, das von der Bindungs-Engine aufgerufen wird, um die Daten zu ändern, während sie zwischen der Quelle und dem Ziel übergeben werden oder umgekehrt.
public:
property IValueConverter ^ Converter { IValueConverter ^ get(); void set(IValueConverter ^ value); };
IValueConverter Converter();
void Converter(IValueConverter value);
public IValueConverter Converter { get; set; }
var iValueConverter = binding.converter;
binding.converter = iValueConverter;
Public Property Converter As IValueConverter
<Binding Converter="converterReference"/>
Eigenschaftswert
Das IValueConverter-Objekt , das die Daten ändert.
Beispiele
Um Den Konverter in einer Bindung zu verwenden, erstellen Sie zuerst eine instance Ihrer Konverterklasse. Das folgende Beispiel zeigt dies als Ressource in einer XAML-Datei.
<UserControl.Resources>
<local:DateToStringConverter x:Key="Converter1"/>
</UserControl.Resources>
<TextBlock Grid.Column="0" Margin="5,0"
Text="{Binding Month, Converter={StaticResource Converter1}}"/>
// Custom class implements the IValueConverter interface.
public class DateToStringConverter : IValueConverter
{
#region IValueConverter Members
// Define the Convert method to change a DateTime object to
// a month string.
public object Convert(object value, Type targetType,
object parameter, string language)
{
// The value parameter is the data from the source object.
DateTime thisdate = (DateTime)value;
int monthnum = thisdate.Month;
string month;
switch (monthnum)
{
case 1:
month = "January";
break;
case 2:
month = "February";
break;
default:
month = "Month not found";
break;
}
// Return the month value to pass to the target.
return month;
}
// ConvertBack is not implemented for a OneWay binding.
public object ConvertBack(object value, Type targetType,
object parameter, string language)
{
throw new NotImplementedException();
}
#endregion
}
Hinweise
Erstellen Sie einen Konverter, indem Sie die IValueConverter-Schnittstelle implementieren und die Convert-Methode implementieren. Diese Methode sollte ein Objekt zurückgeben, das denselben Typ hat wie die Abhängigkeitseigenschaft, auf die die Bindung abzielt, oder zumindest einen Typ, der implizit in den Zieltyp umgewandelt oder konvertiert werden kann.