.NET MAUI — адрес дескриптора контроллера

#c# #winui-3 #maui

Вопрос:

Я начал играть с последней версией RC .NET MAUI. Я хочу перенести приложение Windows, которое у меня есть, чтобы позже оно могло быть многоплатформенным. Для Windows моему приложению необходимо получить дескриптор контроллера (затем он передается в стороннюю библиотеку, которая его использует).

В моем приложении WinForms я обычно делаю что-то вроде IntPtr controlHandle = MyControl.Handle;

Можно ли получить дескриптор элемента управления в .NET MAUI? Я помню, как в прошлом проверял это для приложения WPF, и для всех элементов управления он возвращал адрес дескриптора главного окна, но был способ создать новый элемент управления с его собственным дескриптором. Есть ли такая возможность на МАУИ?

Комментарии:

1. Вполне вероятно, что стороннее приложение, которое работает с этим дескриптором, в любом случае не является кроссплатформенным.

2. Я уверен, что это не так. Но я предполагаю, что в MAUI должен быть способ условно запускать код в зависимости от операционной системы, на которой он работает. Поэтому в Windows он будет использовать эту библиотеку, а для macOS он будет использовать что-то другое…

3. Самое близкое, что я знаю, чтобы получить конкретные вещи для платформы, — это раздаточные устройства. docs.microsoft.com/en-us/dotnet/maui/user-interface/handlers/…