MyMap.MouseLeftButtonDown += new MouseButtonEventHandler(MyMap_MouseLeftButtonDown);
void MyMap_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
if (nMouseType > 0)
{
if (this._mouseTool.IsDoubleClick())
{
e.Handled = true; //取消双击时间
}
}
}
<pre name="code" class="csharp">//禁止滚轮缩放,原理是固定地图比例为1
if (isInit) //是否启用缩放 { MyMap.ZoomFactor = 10; } else { MyMap.ZoomFactor = 1; }
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
MyMap.MouseLeftButtonDown += new MouseButtonEventHandler(MyMap_MouseLeftButtonDown); //添加注册事件,因为在地图上按下右键后,设置<span style="font-family: Arial, Helvetica, sans-serif;">MyMap.IsEnabled = false;会把地图所有事件都取消,所以需要把右键UP事件绑定在添加的新层</span><span style="font-family: Arial, Helvetica, sans-serif;">spHideLayer上</span><span style="font-family: Arial, Helvetica, sans-serif;">
</span>
MyMap.MouseRightButtonDown += new MouseButtonEventHandler(MyMap_MouseRightButtonDown);
MyMap.MouseRightButtonUp += new MouseButtonEventHandler(MyMap_MouseRightButtonUp);
spHideLayer.MouseRightButtonUp += new MouseButtonEventHandler(MyMap_MouseRightButtonUp);
LayoutRoot.MouseRightButtonDown += (obj, arg) => //禁用右键
{
arg.Handled = true;
};
LayoutRoot.MouseLeftButtonDown += (obj, arg) =>
{
spRightMouse.Visibility = System.Windows.Visibility.Collapsed;
};
}
void MyMap_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
if (nMouseType > 0)
{
MyMap.IsEnabled = false; //取消地图所有事件
spHideLayer.Visibility = System.Windows.Visibility.Visible; //显示事件绑定的透明层
spHideLayer.MouseWheel += new MouseWheelEventHandler(spHideLayer_MouseWheel); //注册滚轮事件
}
}
void MyMap_MouseRightButtonUp(object sender, MouseButtonEventArgs e)
{
MyMap.IsEnabled = true;
spHideLayer.Visibility = System.Windows.Visibility.Collapsed;
spHideLayer.MouseWheel -= new MouseWheelEventHandler(spHideLayer_MouseWheel);
}
void spHideLayer_MouseWheel(object sender, MouseWheelEventArgs args)
{
if (args.Delta > 0)
{
}
else
{
}
}