开发者

Anchoring/docking behavior in WPF on Canvas layout

开发者 https://www.devze.com 2023-02-20 00:58 出处:网络
I am arranging quite freely a lot of elements on a Canvas layout, in fact the elements represent an interactive flow-chart. As transformations are applied, I need relative transformations on some of t

I am arranging quite freely a lot of elements on a Canvas layout, in fact the elements represent an interactive flow-chart. As transformations are applied, I need relative transformations on some of the elements.

Especially I require some elements being anchored or docked to their parent elements. I found different solutions, however I don't know if they solve my problem in the most elegant way.

Here is an example:

<Line X1="80" X2="800" Y1="730" Y2="730"/>
<Polygon Points="0,30 40,0 40,60" Canvas.Left="48" Canvas.Top="700"/>
开发者_如何学编程

The Polygon draws a triangle and I would like to let it dock on the left side of line. Which means, when translating the line to a new position or when scaling it down, the Polygon should move with it.

Is this possible?


put them in a canvas of their own, that way you can position the outer canvas absolutely and keep the inner stuff together.

like this:

<Canvas>
    <Line X1="60" X2="820" Y1="60" Y2="760"> <!--some other line--> </Line>
    <Canvas Canvas.Left="48" Canvas.Top="700">
        <Polygon Points="0,30 40,0 40,60"/>
        <Line X1="32" X2="752" Y1="30" Y2="30"/>
    </Canvas>        
</Canvas>
0

精彩评论

暂无评论...
验证码 换一张
取 消