Есть у меня UserControl
под именем Pin
. Внутри него есть несколько элементов Path
. При использовании VisualTreeHelper.HitTest
я получаю ссылки на эти Path
, однако я хочу получать ссылку на сам Pin
. Я узнал, что нужно использовать
protected override HitTestResult HitTestCore(PointHitTestParameters hitTestParameters)
{
return new PointHitTestResult(this, hitTestParameters.HitPoint);
}
внутри кода моего Pin
, но я по прежнему получаю ссылки на Path
вместо Pin
.
Что я делаю не так?
В поиске:
void click()
{
Pin pin = null;
Vector2 mouse = Mouse.GetPosition(MainWindow.main).ToVector2();
VisualTreeHelper.HitTest(MainWindow.main, PinHitFilter, PinHitResult, new PointHitTestParameters(mouse));
}
HitTestFilterBehavior PinHitFilter(DependencyObject o)
{
if (o is Pin) return HitTestFilterBehavior.ContinueSkipChildren;
return HitTestFilterBehavior.Continue;
}
HitTestResultBehavior PinHitResult(HitTestResult result)
{
Pin pin = result.VisualHit as Pin;
return HitTestResultBehavior.Stop;
}
В элементе:
protected override HitTestResult HitTestCore(PointHitTestParameters hitTestParameters)
{
return new PointHitTestResult(this, hitTestParameters.HitPoint);
}
Так этот способ работает.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
возникает ошибка при использовании функции mb_substr() Fatal error: Uncaught Error: Call to undefined function subsrt() in C:\xampp\htdocs\mylocalwebloc\index