2012-11-20 45 views
1

我想繪製一條線,將兩個用戶控件鏈接到屏幕上,然後在用戶控件移動時移動。我創建了第三個用戶控件,稱之爲ConnectingLine,然後添加了兩個指向用戶控件的依賴項屬性。畫一條線連接WPF中的兩個用戶控件

我寫的代碼,以便ConnectingLine具有源和匯的用戶控件的引用,但現在我遇到了一些問題:

  • 如何找出源和接收器的用戶控件的位置?我是WPF的新手,對於沒有返回Point對象的'Position'屬性感到困惑。如果我能得到兩個Point對象,然後我可以將它們綁定到內部ConnectingLine線路:

    < 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沿着與用戶控件移動?

回答

0

您需要使用Canvas。放置在畫布上的每個UI元素都具有如下屬性:Canvas.Left,Canvas.Top,Canvas.ZIndex。