更新 : 2007 年 11 月
この Extensible Application Markup Language (XAML) の例では、ZoomPercentageConverter 型コンバータを使用して、DocumentViewer の Zoom プロパティのデータをテキスト コントロールにバインドする方法を示します。
使用例
<Window x:Class="SDKSample.Window1"
xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Grid.Resources>
<ZoomPercentageConverter x:Key="MyConverterKey" />
</Grid.Resources>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<DocumentViewer Name="dvZoomSource" Grid.Row="0" />
<TextBox Grid.Row="1">
<TextBox.Text>
<Binding
ElementName="dvZoomSource"
Path="Zoom"
Converter="{StaticResource MyConverterKey}"
Mode="OneWay" />
</TextBox.Text>
</TextBox>
</Grid>
</Window>
タスクの解説
この例では、Zoom の値への変更は TextBox のデータ バインドに直ちに反映されます。ZoomPercentageConverter 型コンバータは、更新がデータ バインディングを通じて伝達されるたびに、自動的に呼び出されます。この特定の型コンバータは、Zoom の double 型の値を、パーセント記号 (%) の付いた文字列値に変換します。
この例では、プロパティ要素構文のバインディング宣言を使用して、Zoom の値を TextBox の Text プロパティにバインドしています。
バインディング宣言の ElementName 句は、ソース要素の Name (この例では "dvZoomSource") を参照しています。
バインド宣言の中の Path 句により、ソース プロパティに名前が付けられます。この例では、Zoom です。
Converter 句では、このデータ バインディングに使用する型コンバータを指定しています。この場合、句はリソース キー (x:Key) と Converter 句で参照される値を照合することで、ローカルに定義された静的リソース マッピングを参照しています。上の例では、リソース キーは "MyConverterKey" です。キー自体は任意の文字列値で、現在のスコープ内で一意でなければなりません。ローカルに定義されたリソースは、上の例で示した StaticResource 構文を使用して参照される必要があります。
バインド宣言の Mode 句は、これが一方向のデータ バインドであることを示します。Zoom のソースの値への更新は、ターゲットの TextBox に反映されますが、TextBox の内容に変更を加えても Zoom の値は変更されません。