MapItemsControl ContextMenu

This commit is contained in:
ClemensFischer 2025-04-28 08:27:53 +02:00
parent 0bc344331c
commit 2efafcf92f
2 changed files with 10 additions and 29 deletions

View file

@ -3,7 +3,7 @@
<Product>XAML Map Control</Product> <Product>XAML Map Control</Product>
<Authors>Clemens Fischer</Authors> <Authors>Clemens Fischer</Authors>
<Copyright>Copyright © 2025 Clemens Fischer</Copyright> <Copyright>Copyright © 2025 Clemens Fischer</Copyright>
<Version>13.3.0</Version> <Version>13.4.0</Version>
<AssemblyVersion>$(Version)</AssemblyVersion> <AssemblyVersion>$(Version)</AssemblyVersion>
<AssemblyOriginatorKeyFile>..\..\MapControl.snk</AssemblyOriginatorKeyFile> <AssemblyOriginatorKeyFile>..\..\MapControl.snk</AssemblyOriginatorKeyFile>
<SignAssembly>true</SignAssembly> <SignAssembly>true</SignAssembly>

View file

@ -30,37 +30,18 @@ namespace MapControl
protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e) protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
{ {
e.Handled = true; if (Keyboard.Modifiers.HasFlag(ModifierKeys.Shift) &&
} ItemsControl.ItemsControlFromItemContainer(this) is MapItemsControl mapItemsControl &&
mapItemsControl.SelectionMode == SelectionMode.Extended)
protected override void OnMouseRightButtonDown(MouseButtonEventArgs e)
{
e.Handled = true;
}
protected override void OnMouseLeftButtonUp(MouseButtonEventArgs e)
{
if (ItemsControl.ItemsControlFromItemContainer(this) is MapItemsControl mapItemsControl)
{
if (mapItemsControl.SelectionMode == SelectionMode.Extended &&
Keyboard.Modifiers.HasFlag(ModifierKeys.Shift))
{ {
mapItemsControl.SelectItemsInRange(this); mapItemsControl.SelectItemsInRange(this);
e.Handled = true;
} }
else else
{ {
// Perform default mouse down item selection on mouse up.
//
base.OnMouseLeftButtonDown(e); base.OnMouseLeftButtonDown(e);
} }
}
e.Handled = true;
}
protected override void OnMouseRightButtonUp(MouseButtonEventArgs e)
{
OnMouseLeftButtonUp(e);
} }
} }
} }