Mega Code Archive
Point Hit Test with VisualTreeHelper HitTest
//File:Window.xaml.cs
using System;
using System.IO;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Navigation;
namespace InputExamples
{
public partial class PointHitTest
{
public PointHitTest()
{
this.InitializeComponent();
}
protected override void OnInitialized(EventArgs e)
{
base.OnInitialized(e);
CompositionTarget.Rendering += this.CompositionTarget_Rendering;
}
private void CompositionTarget_Rendering(object sender, EventArgs e)
{
Point position = Mouse.GetPosition(RectangleArea);
VisualTreeHelper.HitTest(RectangleArea,null,new HitTestResultCallback(HitTestResultHandler),
new PointHitTestParameters(position)
);
}
public HitTestResultBehavior HitTestResultHandler(HitTestResult result)
{
PointHitTestResult hitResult = (PointHitTestResult)result;
Console.WriteLine(((FrameworkElement)hitResult.VisualHit).Name);
Console.WriteLine(hitResult.PointHit.ToString());
return HitTestResultBehavior.Continue;
}
}
}