public MapControlToolTipService(MapControl mapControl, TileView tileView) { m_mapControl = mapControl; m_hoverTileView = tileView; m_content = new TileToolTipControl(); m_content.DataContext = m_hoverTileView; var popup = new ToolTip(); popup.Content = m_content; popup.Placement = System.Windows.Controls.Primitives.PlacementMode.Right; popup.HorizontalOffset = 4; popup.PlacementTarget = m_mapControl; m_popup = popup; // Disable the animations, because we lose datacontext during fade-out animation. // We need to override the default values in the PlacementTarget control m_mapControl.Resources.Add(SystemParameters.ToolTipAnimationKey, false); m_mapControl.Resources.Add(SystemParameters.ToolTipFadeKey, false); m_mapControl.Resources.Add(SystemParameters.ToolTipPopupAnimationKey, PopupAnimation.None); }
public MapControlElementsService(MapControl mapControl, Canvas canvas) { m_mapControl = mapControl; m_canvas = canvas; m_scaleTransform = new ScaleTransform(); m_translateTransform = new TranslateTransform(); var group = new TransformGroup(); group.Children.Add(m_scaleTransform); group.Children.Add(m_translateTransform); m_canvas.RenderTransform = group; m_elementMap = new Dictionary<IAreaElement, FrameworkElement>(); m_mapControl.EnvironmentChanged += OnEnvironmentChanged; m_mapControl.TileLayoutChanged += OnTileLayoutChanged; m_mapControl.ZChanged += OnZChanged; OnEnvironmentChanged(m_mapControl.Environment); }