1

我想画一条连接屏幕上两个用户控件的线,然后在用户控件移动时移动。我创建了第三个名为 ConnectingLine 的用户控件,然后添加了两个指向用户控件的依赖项属性。

我编写了代码,以便 ConnectingLine 具有对源和接收器用户控件的引用,但现在我遇到了一些问题:

  • 如何确定源和接收器用户控件的位置?我是 WPF 的新手,并且对缺少将返回 Point 对象的“位置”属性感到困惑。如果我可以得到两个 Point 对象,那么我可以将它们绑定到 ConnectingLine 内的 Line:

    < Line X1="{Binding ElementName=Me, Path=Source.X}" Y1="{Binding ElementName=Me, Path=Source.Y}" X2="{Binding ElementName=Me, Path=Sink.X}" Y2="{Binding ElementName=Me, Path=Sink.Y}" x:Name="Connector" Stroke="Black" StrokeThickness="4" MouseDown="Connector_MouseDown" />

  • 如何让 ConnectingLine 与用户控件一起移动?

4

1 回答 1

0

您需要使用Canvas。放置在画布上的每个 UI 元素都有附加属性,例如:Canvas.Left、Canvas.Top、Canvas.ZIndex。

于 2012-11-20T16:24:45.867 回答