0
我是新来的Silverlight编程,而DependencyProperty
还是比较新的给我,这会导致以下问题:如何遵循一个元素的位置在Silverlight
我想连接到一个事件,当Canvas.LeftProperty
的Canvas.TopProperty
更改为UIElement
(在我的情况下为UserControl
)。
例如,我能够做到以下几点:
source.SizeChanged += delegate
{
target.Width = source.Width;
target.Height = source.Height;
};
但是我无法找到位置的类似事件。这甚至有可能吗?
我已经尝试过LayoutUpdated。不幸的是,它只在最初的启动时触发一次。 当前的解决方法是更新源的位置,以更新目标。但是,这会对代码引入不必要的依赖性。 – sukru 2010-07-28 04:04:54
绑定怎么样? target.SetBinding(FrameworkElement.WidthProperty,new Binding(“Width”){Source = source}); – Josh 2010-07-28 04:29:54
谢谢,这是朝着正确方向迈出的一步。但是Left和Top属性实际上会涉及一些计算(基本+偏移量)。至少我正在学习更多关于这些属性的知识(我仍然错过了Windows.Forms的简单性) – sukru 2010-07-28 16:42:45