Silverlight - 将鼠标坐标从UI视图传递到ViewModel

时间:2013-05-18 10:29:52

标签: c# .net silverlight mvvm mousemove

我正在使用Silverlight和MVVM(使用Caliburn.Micro)。 我在View中创建了一个简单的矩形,如下所示:

<Rectangle x:Name="Rectangle2" cal:Message.Attach="[Event MouseMove] = [Action MouseMoved($eventArgs)]" Fill="#FFE2F5FF" HorizontalAlignment="Left" Height="220" Margin="195,43,0,0" Stroke="Black" VerticalAlignment="Top" Width="195" />

在ViewModel中我有:

public void MouseMoved(MouseEventArgs mouseEventArgs)
{
        var point = mouseEventArgs.GetPosition(null);
        String str = string.Format("({0}\t{1})",point.X,point.Y);
        MVVMCoords = str;
}

出现的坐标是绝对的,因为我在GetPosition中放置了null。 我怎样才能使它们相对于矩形? (所以矩形的左上角是0,0) 据我了解,这可以通过ViewModel知道视图中的UIElements来完成。

谢谢, 盖

0 个答案:

没有答案