无法使用HelixToolkit将滑块控件连接到GridLabels

时间:2019-03-22 20:08:48

标签: wpf helix-3d-toolkit

我正在尝试使用GridLabels在模型中显示时间:

GridLabels.Add(new BillboardTextItem
{
    Text = String.Format("{0} {1} {2}", "Time = ", 
    Well.TubeAnimTime.ToString("N0"), "Sec"),
    Position = new Point3D(0, 0, 500),
    WorldDepthOffset = 100
});

我尝试使用滑块控件测试此功能:

   <StackPanel>
        <TextBlock Text="Animation" />
        <Slider x:Name="AnimationSlider" Value="{Binding Well.TubeAnimTime}" 
        ToolTip="{Binding ElementName=AnimationSlider, Path=Value}" 
        Minimum="0" Maximum="100" Width="100" Margin="10"/>
   </StackPanel> 

尽管标签显示OK(确定)并响应所有移动和缩放,但它不响应Slider。我知道Slider可以正常工作,因为我模型中的其他元素对此都做出了响应。 我试图在以下位置将出价模式更改为TwoWay:

<h:BillboardTextGroupVisual3D Background="Gray" Foreground="White" 
   FontSize="12" Offset="2,2"
   Padding="1" Items="{Binding GridLabels, Mode=OneWay, 
   UpdateSourceTrigger=PropertyChanged}" 
   IsEnabled="{Binding IsChecked, ElementName=FreezeAxisLblsCheckBox}"  />

VS 2017不允许我,因为该属性似乎是只读的。

我真的很喜欢Helix Toolkit,但我似乎学习缓慢。任何人都可以解释为什么与Slider的绑定不起作用。还是有更简单的方法在诸如GridLabels的不同框中显示时间参数?

I.Konuk

1 个答案:

答案 0 :(得分:0)

BillboardTextItem和BillboardTextGroupVisual3D.Items均不可观察。因此,绑定将不起作用。