2

我有如下所示的 XAML:

<DataTemplate x:Key="CdTeThickness">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>

            <StackPanel Grid.Row = "0" Orientation="Horizontal">
                <CheckBox x:Name="DisplayMarkers"   Content="Display Data Points" Margin="8,5,0,5" HorizontalAlignment="Left" IsChecked="False"/>
                <CheckBox x:Name="DisplayIndicator" Content="Display Indicator"   Margin="8,5,0,5" HorizontalAlignment="Left" IsChecked="False"/>
            </StackPanel>

            <vf:Chart Grid.Row = "1" Style="{StaticResource chartStyle}" IndicatorEnabled="{Binding Source={x:Reference DisplayIndicator}, Path=IsChecked}">
                <vf:Chart.Titles>
                    <vf:Title Text="{Binding Chart.ChartTitle}"/>
                </vf:Chart.Titles>

我的理解是 x:Reference 尚未得到广泛支持。但是,这是我能够绑定到所需属性 (DisplayIndi​​cator) 的唯一方法,如屏幕截图所示。有人可以建议在这种情况下有效的 x:Reference 替代方案吗?

4

2 回答 2

2

通常您可以使用ElementName绑定,但实际上它得到了很好的支持。x:Reference

{Binding IsChecked, ElementName=DisplayIndicator}
于 2012-05-18T13:34:06.237 回答
0

此外,作为直接绑定的替代方法,您可以将 theCheckbox.IsCheckedChart.IndicatorEnabledenabled 绑定到视图模型上的属性(例如 ChartDisplayMarkers)。

于 2012-05-18T13:51:21.903 回答