0

こんにちは、

シンプルなチェックボックス テンプレートを作成しようとしていますが、何時間も試行した後、1 つの問題に遭遇しました。カスタム テンプレートは単なるgrid containing 2 rowsa labelあり、checkboxそれ自体です。

ここにコード:

<Style x:Key="OptionCheckBoxStyle" TargetType="{x:Type local:OptionCheckBox}"
       BasedOn="{StaticResource {x:Type CheckBox}}">
        <Setter Property="Template">
        <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:OptionCheckBox}">
                    <Grid>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                        </Grid.ColumnDefinitions>
                        <Label Content="{TemplateBinding Label}" 
                               ToolTip="{TemplateBinding ToolTip}" >
                        </Label>
                        <CheckBox x:Name="CheckMark" Grid.Column="1" 
                                  Margin="5,0,0,0" />
                    </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

問題は、この要素の IsChecked プロパティを CheckMark 要素の IsChecked プロパティにバインドすることです。私は次のことを試しました(他のものの組み合わせとともに)

    <Setter Property="IsChecked" Value="{Binding Path=IsChecked,
            ElementName=CheckMark}"/>

これが機能するために必要なバインディングを知っている人はいますか? (基本的には子要素へのバインディング)

注: ペイント全体を使用しない理由はemulate the checkbox、異なるテーマを実行しているためです。通常のチェックボックスとは異なる外観になります。

よろしく、ダン

4

0 に答える 0