我有一个小部件,我想将Point3D渲染为“带有标签的浮动气泡”,其位置由X和Y属性决定,标签文本由Z值确定。
我不知道如何将Point3D的Z属性数据绑定到TextBlock的Text属性,因为Z不是依赖属性。
我当前的非工作代码(尽管正确呈现了回退值)如下:
<ItemsControl.ItemTemplate>
<DataTemplate DataType="Point3D">
<Border
Width="20"
Height="{Binding Width, RelativeSource={RelativeSource Self}}"
Background="white" BorderThickness="1"
CornerRadius="{Binding Width, RelativeSource={RelativeSource Self}}"
BorderBrush="{StaticResource ResourceKey=CorLinhaSimetria}"
RenderTransformOrigin="0.5,0.5">
<Border.RenderTransform>
<TranslateTransform X="-10" Y="-10"/>
</Border.RenderTransform>
<!-- Critical part here -->
<TextBlock Text="{Binding Z, FallbackValue=0°}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>