Application.Startup Esemény
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Az objektum metódusának Run() meghívásakor Application fordul elő.
public:
event System::Windows::StartupEventHandler ^ Startup;
public event System.Windows.StartupEventHandler Startup;
member this.Startup : System.Windows.StartupEventHandler
Public Custom Event Startup As StartupEventHandler
Eseménytípus
Példák
Az alábbi példa bemutatja, hogyan szerezhet be és dolgozhat fel parancssori beállításokat önálló alkalmazásból. Ha a /StartMinimized parancssori paraméter meg van adva, az alkalmazás kis méretű állapotban nyitja meg a főablakot.
<Application
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="SDKSample.App"
Startup="App_Startup" />
using System.Windows;
namespace SDKSample
{
public partial class App : Application
{
void App_Startup(object sender, StartupEventArgs e)
{
// Application is running
// Process command line args
bool startMinimized = false;
for (int i = 0; i != e.Args.Length; ++i)
{
if (e.Args[i] == "/StartMinimized")
{
startMinimized = true;
}
}
// Create main application window, starting minimized if specified
MainWindow mainWindow = new MainWindow();
if (startMinimized)
{
mainWindow.WindowState = WindowState.Minimized;
}
mainWindow.Show();
}
}
}
Imports System.Windows
Namespace SDKSample
Partial Public Class App
Inherits Application
Private Sub App_Startup(ByVal sender As Object, ByVal e As StartupEventArgs)
' Application is running
' Process command line args
Dim startMinimized As Boolean = False
Dim i As Integer = 0
Do While i <> e.Args.Length
If e.Args(i) = "/StartMinimized" Then
startMinimized = True
End If
i += 1
Loop
' Create main application window, starting minimized if specified
Dim mainWindow As New MainWindow()
If startMinimized Then
mainWindow.WindowState = WindowState.Minimized
End If
mainWindow.Show()
End Sub
End Class
End Namespace
Az XAML böngészőalkalmazások (XBAP-k) nem tudják lekérni és feldolgozni a parancssori argumentumokat, mert a ClickOnce üzembe helyezésével indulnak el (lásd: A WPF-alkalmazások (WPF)). A lekérdezési sztring paramétereit azonban lekérhetik és feldolgozhatják az indításukhoz használt URL-címekről.
Megjegyzések
Egy tipikus Windows megjelenítési alaprendszer alkalmazás indításkor számos inicializálási feladatot hajthat végre, többek között a következőket:
Parancssori paraméterek feldolgozása.
Nyissa meg a főablakot.
Alkalmazáshatókörű erőforrások inicializálása.
Alkalmazás-hatókör tulajdonságainak inicializálása.
Deklaratív módon megadhatja a főablakot és az alkalmazáshatókörű erőforrásokat az XAML (StartupUri és Resourcesa ) használatával. Néha azonban az alkalmazás erőforrásai vagy főablaka csak programozott módon határozható meg futásidőben. Emellett az alkalmazás hatókörének tulajdonságai és parancssori paraméterei csak programozott módon használhatók. A programozott inicializálás az Startup esemény kezelésével végezhető el, beleértve a következőket:
Az eseménykezelőnek átadott Args osztály tulajdonságából StartupEventArgs elérhető parancssori Startup paraméterek beszerzése és feldolgozása.
Inicializálja az alkalmazás hatókörű erőforrásait a Resources tulajdonság használatával.
Inicializálja az alkalmazás hatókörének tulajdonságait a Properties tulajdonság használatával.
Példányosíthat és megjeleníthet egy (vagy több) ablakot.
Note
A parancssori paraméterek az objektum statikus GetCommandLineArgs metódusának Environment meghívásával is beszerezhetők. A GetCommandLineArgs végrehajtáshoz azonban teljes megbízhatóságra van szükség.
Ha XAML használatával állítja be a StartupUri, a létrehozott fő ablak sem a MainWindow tulajdonságból, sem a Windows objektum Application tulajdonságából nem érhető el, amíg a Startup esemény feldolgozása nem történik meg. Ha az indítás során hozzá kell férnie a főablakhoz, manuálisan kell létrehoznia egy új ablakobjektumot az Startup eseménykezelőből.
Note
Ha az alkalmazás CredentialPolicy használ hitelesítőadat-szabályzat megadásához, a CredentialPolicy létrehozása után be kell állítania Startup; ellenkező esetben WPF beállítja azt egy alapértelmezett belső szabályzatra közvetlenül a Startup esemény létrehozása után.
Az eseménykezelőnek Startup átadott parancssori argumentumok nem azonosak az XAML böngészőalkalmazásnak (XBAP) átadott URL-lekérdezési sztringparaméterekkel.