Как получить ручку hwnd элементов в .net maui [дубликат]C#

Место общения программистов C#
Ответить
Anonymous
 Как получить ручку hwnd элементов в .net maui [дубликат]

Сообщение Anonymous »

Я интегрирую Dahua CCTV SDK (для живых камер) в приложение .NET MAUI. Я успешно реализовал это в WPF, используя Hwndhost и в Avalonia, используя NativeControlHost, но я борюсь с .net Maui.public class HandleControl : HwndHost
{
protected override HandleRef BuildWindowCore(HandleRef hwndParent)
{
IntPtr hwndHost = CreateWindowEx(0, "static", "",
WS_CHILD | WS_VISIBLE,
0, 0, width, height, hwndParent.Handle, IntPtr.Zero, IntPtr.Zero, 0);

ReadyCommand?.Execute(hwndHost);
return new HandleRef(this, hwndHost);
}
}
< /code>
Конкретная проблема в .net maui: < /p>
Я нашел решения, которые показывают, как получить ручку основного окна с помощью: < /p>
var tops = Win32Window.GetProcessWindows();
var winUI3Window = tops.FirstOrDefault(w => w.ClassName == "WinUIDesktopWin32WindowClass");
< /code>
Однако мне нужна ручка конкретных элементов пользовательского интерфейса - например, если я хочу разместить видео в кадр, границу или контент. Мне не нужна вся ручка окон, а скорее конкретные ручки элемента пользовательского интерфейса. < /P>
Что мне нужно: < /p>
Получить нативную ручку (hwnd в окнах) конкретных элементов, таких как рама, граница и т. Д. < /p>
eavivalty к WPF hwndhost, но на уровне элемента в maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui < /p> pase to maui ​​wpf hwndhost. Dahua SDK для визуализации в определенных элементах управления
Что я пробовал:
Пользовательские обработчики/рендеристы (но они больше фокусируются на стилии) элемент)
Конкретный вопрос: как я могу получить ручки отдельных элементов пользовательского интерфейса в Windows .net Maui для интеграции с собственными SDK, которые требуют определенных HWND?

Подробнее здесь: https://stackoverflow.com/questions/797 ... n-net-maui
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»