我使用以下代码在WP7 Silverlight中拖放图像:
using Microsoft.Expression.Interactivity.Layout;
using System.Windows.Media.Imaging;
namespace MapTest
{
public partial class MainPage : PhoneApplicationPage
{
// Constructor
public MainPage()
{
InitializeComponent();
var dragObject = new MouseDragElementBehavior();
dragObject.Attach(TestMapImage);
}
...
...
首先,我删除了新页面中的所有控件,并添加了一个画布,将图像放入其中。在代码的后面,我将图像缩放了4倍,因此它变得比画布本身大。
private void changeMapSize(double scale)
{
TestMapImage.Width = TestMapImage.Width * scale;
TestMapImage.Height = TestMapImage.Height * scale;
}
但是当我尝试通过拖动获取图像的位置时,我总是得到初始值,即使图像的位置发生变化,该值也不会改变,我使用:
testTextBox.Text = Canvas.GetLeft(TestMapImage).ToString();
进行测试。
获取图像实际位置的任何解决方案?