如题,求问,在Canvas或者Grid上添加对MouseDown、MouseUp、MouseMove事件的响应代码如下:
.....
<Canvas x:Name="LayoutRoot" Background="Transparent">
.......
public partial class MainPage : PhoneApplicationPage
{
// 构造函数
public MainPage()
{
InitializeComponent();
LayoutRoot.MouseLeftButtonDown += onGridMouseDown;
LayoutRoot.MouseMove += onGridMouseMove;
LayoutRoot.MouseLeftButtonUp += onGridMouseUp;
// 用于本地化 ApplicationBar 的示例代码
//BuildLocalizedApplicationBar();
}
void onGridMouseDown(object sender, MouseButtonEventArgs e)
{
Grid c = sender as Grid;
Point ppp = e.GetPosition(c);
Dispatcher.BeginInvoke(() =>
{
long k = 0;
while (k < 20000000)
k++;
System.Diagnostics.Debug.WriteLine("onGridMouseDown -- x = " + ppp.X + " ,y = " + ppp.Y);
}
);
}
void onGridMouseUp(object sender, MouseButtonEventArgs e)
{
Grid c = sender as Grid;
Point ppp = e.GetPosition(c);
Dispatcher.BeginInvoke(() =>
{
long k = 0;
while (k < 30000000)
k++;
System.Diagnostics.Debug.WriteLine("onGridMouseUp -- x = " + ppp.X + " , y = " + ppp.Y);
}
);
}
void onGridMouseMove(object sender, MouseEventArgs e)
{
Grid c = sender as Grid;
Point ppp = e.GetPosition(c);
int x = (int)ppp.X;
int y = (int)ppp.Y;
Dispatcher.BeginInvoke(() =>
{
long i = 0;
while (i < 9000000)
i++;