2016-01-24 43 views
-1

使用itemsControl和canvas我绑定到可观察集合并在画布上显示视觉效果。显示的项目使用数据模板来控制其视觉效果。数据模板由一个边框组成,边框内部是一个椭圆。绑定到wpf画布中的子元素中心

如何绑定到与画布相关的椭圆的中心点。记住椭圆在边界控制之内吗?

直接绑定到椭圆的中心点而不是其父边界的原因是因为边框内可能有多个椭圆。边框本身可以由用户在画布内移动。这将需要更新绑定,它的子椭圆的位置已经改变。所以他们的价值更新。

你想知道我为什么要绑定到这个椭圆的中心点,这是出于数据原因。

回答

0

在您将椭圆放在哪个边框内的控件是什么。 Ellipse中心仅适用于某些面板。

当您的边框位置发生变化时,您可以在您的Ellipse中使用一些DP受到影响。使用RelativeSource对此进行绑定并应用转换器。 这个转换器会计算中心。 椭圆的中心将取决于它在边界和边界位置内的位置。

+0

内边框我有一个网格。这就是所有这些椭圆的存在。你能提供和片段吗? – JokerMartini

+0

您必须拥有DP相关信息。到Border的Canvas.Left/Top。你可以绑定DP相关。到Ellipse的中心到Border DP。你需要一个转换器来转换边界DP。椭圆中心=边界DP(左边)+后边距+上移宽度÷2 – AnjumSKhan

+0

通过DP来表示依赖属性。你的意思是什么? – JokerMartini