次の方法で共有


Binding.Converter プロパティ

定義

ソースとターゲットの間で渡されるときにデータを変更するためにバインディング エンジンによって呼び出されるコンバーター オブジェクトを取得または設定します。その逆も可能です。

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

プロパティ値

データを変更する IValueConverter オブジェクト。

バインディングでコンバーターを使用するには、まずコンバーター クラスのインスタンスを作成します。 次の例は、XAML ファイルのリソースとしてこれを示しています。

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

注釈

IValueConverter インターフェイスを実装し、Convert メソッドを実装してコンバーターを作成します。 そのメソッドは、バインディングがターゲットとする依存関係プロパティと同じ型のオブジェクト、または少なくとも暗黙的に強制強制またはターゲット型に変換できる型を返す必要があります。

適用対象

こちらもご覧ください