Condividi tramite


AppWindow Classe

Definizione

Rappresenta un contenitore gestito dal sistema per il contenuto di un'app.

public ref class AppWindow sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 524288)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AppWindow final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 524288)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AppWindow
Public NotInheritable Class AppWindow
Ereditarietà
Object Platform::Object IInspectable AppWindow
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10, version 1903 (è stato introdotto in 10.0.18362.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v8.0)

Commenti

Nota

AppWindow è attualmente disponibile in anteprima. Ciò significa che puoi inviare app che usano AppWindow allo Store, ma è noto che alcuni componenti della piattaforma e del framework non funzionano con AppWindow (vedi Limitazioni).

Un'appWindow può essere usata per rappresentare una parte visualizzata di un'app Windows Runtime quando ha più di una finestra. È simile al concetto di ApplicationView, ma non allo stesso modo nel comportamento e nella durata.

A differenza di ApplicationView, ogni AppWindow non ha un CoreWindow corrispondente. Condividono tutti lo stesso thread di elaborazione dell'interfaccia utente (incluso il dispatcher eventi) da cui sono stati creati.

Per ottenere un oggetto di questo tipo, chiamare AppWindow.TryCreateAsync.

Per connettere il contenuto a AppWindow, chiamare ElementCompositionPreview.SetAppWindowContent.

È possibile connettere il contenuto XAML solo a AppWindow, non è disponibile alcun supporto per il contenuto DirectX nativo o Holographic.

Per specificare una dimensione minima preferita per la finestra dell'app, usare il metodo WindowManagementPreview.SetPreferredMinSize .

Suggerimento

Per altre info e codice che illustra AppWindow, vedi Mostra più visualizzazioni per un'app e Mostra più visualizzazioni con AppWindow.

Un esempio che mostra come usare l'API AppWindow è disponibile nel repository Degli esempi universali di Windows in GitHub in Samples/AppWindow.

Limitazioni

Le limitazioni nella versione di anteprima corrente di AppWindow includono (questo è un elenco non esaustivo):

  • Qualsiasi API che usa il modello GetForCurrentView non funziona per AppWindow perché CurrentView fa riferimento a ApplicationView, che è un'entità separata da AppWindow.
  • La riproduzione multimediale a schermo intero non è disponibile in MediaElement o MediaPlayerElement.
  • MessageDialog non sarà modale per la finestra corretta, ma è consigliabile usare ContentDialog .
  • WebView non è completamente supportato. È possibile usare un controllo WebView in-proc, ma qualsiasi elemento al di fuori del contenuto HTML statico potrebbe funzionare correttamente.
  • Se imposti la proprietà Window.Current.Content in XAML, elimina definitivamente tutto il contenuto XAML in AppWindow. Evitare di usarlo come modello per reimpostare il contenuto quando si sospende l'app se si usa AppWindow.
  • Smooth Window Resize non funziona per AppWindows. La cornice e il contenuto verranno ridimensionati in modo indipendente, che può risultare non terminata quando il layout del contenuto è lento.
  • DisplayInformation non è accessibile per AppWindow. Se AppWindow si trova su un monitor diverso da ApplicationView, non sarà possibile eseguire una query per ottenere le informazioni di visualizzazione corrette.
  • UserInteractionMode non può essere impostato per un'appWindow.
  • Le finestre di dialogo di stampa (2D e 3D) non verranno padre della finestra corretta.
  • AppWindow non è in grado di rilevare quando vengono richiamati i movimenti del bordo.
  • AppWindow non può essere usato per soddisfare una richiesta di attivazione tramite ActivationViewSwitcher.

Proprietà

Content

Ottiene il contenuto dell'app attualmente collegato alla finestra.

DispatcherQueue

Ottiene la coda del dispatcher per la finestra dell'app.

Frame

Ottiene il frame per la finestra dell'app.

IsVisible

Ottiene un valore che indica se la finestra può essere visualizzata in una visualizzazione.

PersistedStateId

Ottiene o imposta una stringa che identifica questa finestra per il rilevamento e il salvataggio dello stato.

Presenter

Ottiene il relatore per la finestra dell'app.

Title

Ottiene o imposta il titolo visualizzato della finestra dell'app.

TitleBar

Ottiene la barra del titolo della finestra dell'app.

UIContext

Ottiene il contesto dell'interfaccia utente per la finestra dell'app.

WindowingEnvironment

Ottiene l'ambiente di windowing per la finestra dell'app.

Metodi

ClearAllPersistedState()

Cancella tutte le proprietà salvate dal sistema per qualsiasi finestra PersistedStateId per l'applicazione specificata.

ClearPersistedState(String)

Cancella tutte le proprietà salvate dal sistema per la finestra con l'ID specificato per l'applicazione specificata.

CloseAsync()

Chiude la finestra dell'app.

GetDisplayRegions()

Restituisce la raccolta di aree di visualizzazione disponibili per la finestra dell'app.

GetPlacement()

Restituisce un oggetto di posizionamento che descrive l'area di visualizzazione, l'offset e le dimensioni della finestra dell'app.

RequestMoveAdjacentToCurrentView()

Invia una richiesta per posizionare la finestra accanto alla visualizzazione corrente.

RequestMoveAdjacentToWindow(AppWindow)

Invia una richiesta per posizionare la finestra accanto alla finestra di ancoraggio specificata.

RequestMoveRelativeToCurrentViewContent(Point)

Effettua una richiesta per posizionare la finestra in corrispondenza dell'offset specificato rispetto alla visualizzazione corrente.

RequestMoveRelativeToDisplayRegion(DisplayRegion, Point)

Effettua una richiesta per posizionare la finestra nell'area di visualizzazione specificata in corrispondenza dell'offset specificato.

RequestMoveRelativeToWindowContent(AppWindow, Point)

Effettua una richiesta per posizionare la finestra in corrispondenza dell'offset specificato rispetto alla finestra di ancoraggio.

RequestMoveToDisplayRegion(DisplayRegion)

Effettua una richiesta per posizionare la finestra nell'area di visualizzazione specificata.

RequestSize(Size)

Effettua una richiesta per impostare la finestra sulle dimensioni specificate.

TryCreateAsync()

Tenta di creare in modo asincrono una nuova istanza di AppWindow.

TryShowAsync()

Tenta di visualizzare in modo asincrono la finestra dell'app corrente.

Eventi

Changed

Si verifica quando viene modificata una proprietà della finestra dell'app.

Closed

Si verifica quando la finestra dell'app è stata chiusa.

CloseRequested

Si verifica dopo l'avvio della chiusura della finestra, ma prima che venga chiuso e prima che si verifichi l'evento Closed.

Si applica a