Niektóre interfejsy API systemu Windows są usuwane
Następujące interfejsy API zostały usunięte:
Microsoft.Maui.ApplicationModel.IWindowStateManager.ActiveWindowDisplayChanged
ZdarzenieMicrosoft.Maui.ApplicationModel.IWindowStateManager.OnWindowMessage(System.IntPtr,uint,System.IntPtr,System.IntPtr)
MetodaMicrosoft.Maui.ApplicationModel.Platform.OnWindowMessage(System.IntPtr,uint,System.IntPtr,System.IntPtr)
Metoda
Wprowadzona wersja
.NET 7
Poprzednie zachowanie
Wcześniej metoda była szczegółem implementacji, IWindowStateManager.OnWindowMessage()
który uruchamiał kontrolę parametrów, aby określić, czy ActiveWindowDisplayChanged
zdarzenie powinno zostać zgłoszone. Zdarzenie ActiveWindowDisplayChanged
można wywołać, jeśli konkretny typ był w stanie obserwować zmiany ekranu, które zawierały aktualnie aktywne okno.
Możesz wywołać metodę Platform.OnWindowMessage()
w celu przekazania komunikatów. Ta metoda wywołana do IWindowStateManager.OnWindowMessage()
metody , która opcjonalnie spowoduje ActiveWindowDisplayChanged
wyzwolenie zdarzenia.
Nowe zachowanie
Interfejsy API są teraz usuwane.
Typ zmiany powodującej niezgodność
Ta zmiana może mieć wpływ na zgodność binarną i zgodność ze źródłem.
Przyczyna wprowadzenia zmiany
Wydarzenie ActiveWindowDisplayChanged
nigdy nie powinno być publiczne, ponieważ było to szczegóły implementacji i nie dostarczyło żadnych dodatkowych informacji, które "coś się zmieniło". Usunęliśmy go, aby uniknąć pomyłek ze MainDisplayInfoChanged
zdarzeniem i zmniejszyć potencjalną złożoność implementacji zarówno dla użytkowników, jak i samego zestawu SDK.
Metoda IWindowStateManager.OnWindowMessage()
była również szczegółem implementacji i nigdy nie powinna być publiczna. Ten interfejs API nie wykonuje już żadnych czynności i dlatego został usunięty.
Metoda Platform.OnWindowMessage()
została zaimplementowana w celu obejścia ograniczenia platform Xamarin.Forms i Xamarin.Essentials. Został on przeniesiony do platformy .NET MAUI w celu pomocy w migracji i użytej na platformie .NET 6. Jednak w programie .NET 7 ten interfejs API nie wykonuje już żadnych czynności i został usunięty.
Zalecana akcja
- Jeśli nie tworzysz aplikacji dla systemu Windows, nie jest wymagana żadna akcja.
- Jeśli używasz polecenia
ActiveWindowDisplayChanged
, użyj poleceniaMicrosoft.Maui.Devices.DeviceDisplay.Current.MainDisplayInfoChanged
zamiast tego. - Jeśli wywołano jedną z
OnWindowMessage()
metod, usuń wywołanie .
Dotyczy interfejsów API
Microsoft.Maui.ApplicationModel.IWindowStateManager.ActiveWindowDisplayChanged
Microsoft.Maui.ApplicationModel.IWindowStateManager.OnWindowMessage(System.IntPtr,uint,System.IntPtr,System.IntPtr)
Microsoft.Maui.ApplicationModel.Platform.OnWindowMessage(System.IntPtr,uint,System.IntPtr,System.IntPtr)