0

如果我绑定到的属性(在这种情况下为上下文)是一个具有其属性 (Unit)的类(LatestReading 类) ,那么执行数据绑定的正确方法是什么。

数据上下文设置为类的根。这是我班级的层次结构。MonitoringPoint.LatestReading.Unit

<DataTemplate x:Key="TrackBallInfoTemplate"
              DataType="{x:Type winGRAPH_Core:MonitoringNode}">
    <StackPanel Margin="3">
        <Grid Height="Auto">
            <StackPanel Height="Auto"
                        VerticalAlignment="Top"
                        Orientation="Horizontal">
                <TextBlock TextWrapping="Wrap"                                       
                           Text="{Binding DataPoint.Value, FallbackValue=0.00}"
                           FontWeight="Bold"
                           FontSize="16" />
                <TextBlock TextWrapping="Wrap"
                           Text="{Binding LatestReading.Unit, FallbackValue=°C}"
                           Margin="2,3,0,0" />
            </StackPanel>
        </Grid>
        <Grid Height="Auto">
            <TextBlock TextWrapping="Wrap"
                       Text="{Binding DataPoint.Category, FallbackValue=time}"
                       d:LayoutOverrides="Width, Height"
                       FontStyle="Italic"
                       Margin="0,2,0,0" />
        </Grid>
    </StackPanel>
</DataTemplate>
4

1 回答 1

0

如果分配给您的 DataContext 的类型是 aLatestReading那么只需使用 property Unit。DataContext 已经设置在更高级别(如果您记得设置它 - 这是一个容易忘记的常见错误)自动级联到子控件。

于 2013-02-25T11:50:35.420 回答