如何从外部ConnectingLine
(一个绑定到FrameworkElement
的自定义控件并将它们与一行连接)绑定到名为&#34的内部TextBlock
的绑定;顶"和"底部"上班?请注意,我希望整个FrameworkElement
用于位置信息。
<Grid>
<ConnectingLine From="{Binding ElementName=Button1.Top}" To="{Binding ElementName=Button2.Top}" />
<ConnectingLine From="{Binding ElementName=Button1.Bottom}" To="{Binding ElementName=Button2.Bottom}" />
<ToggleButton x:Name="Button1">
<ToggleButton.Template>
<ControlTemplate>
<Grid>
<Rectangle x:Name="Top" />
<Rectangle x:Name="Bottom" />
</Grid>
</ControlTemplate>
</ToggleButton.Template>
</ToggleButton>
<ToggleButton x:Name="Button2">
<ToggleButton.Template>
<ControlTemplate>
<Grid>
<Rectangle x:Name="Top" />
<Rectangle x:Name="Bottom" />
</Grid>
</ControlTemplate>
</ToggleButton.Template>
</ToggleButton>
</Grid>
我的目标是能够在XAML中绑定。理想情况下,没有额外的绒毛,但可以接受涉及自定义绑定操作符或附加属性的解决方案。
编辑: 我如何获得输出:
每个不同颜色的列都是模板化的ToggleButton
之一,在顶部和底部元素之间已经有一个虚线ConnectingLine
。横向填充的线条是我感兴趣的。目前我从代码隐藏中实现了我想要的东西。
答案 0 :(得分:1)
<ToggleButton x:Name="Button">
<ToggleButton.Template>
<ControlTemplate>
<Grid>
<CheckBox x:Name="FindMe" IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=IsChecked}"/>
</Grid>
</ControlTemplate>
</ToggleButton.Template>
</ToggleButton>
让我知道它是否有效。