Application.Startup 이벤트

정의

Run() 개체의 Application 메서드가 호출될 때 발생합니다.

public:
 event System::Windows::StartupEventHandler ^ Startup;
public event System.Windows.StartupEventHandler Startup;
member this.Startup : System.Windows.StartupEventHandler 
Public Custom Event Startup As StartupEventHandler 

이벤트 유형

예제

다음 예제에서는 획득 하 고 독립 실행형 애플리케이션에서 명령줄 옵션을 처리 하는 방법을 보여 줍니다. 경우는 /StartMinimized 제공 된 명령줄 매개 변수, 애플리케이션 최소화 된 상태로 주 창을 엽니다.

<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

XBAP(XAML 브라우저 애플리케이션)는 ClickOnce 배포를 사용하여 시작되므로 명령줄 인수를 검색하고 처리할 수 없습니다( WPF(WPF 애플리케이션 배포 참조). 그러나 XBAP를 시작하는 데 사용되는 URL에서 쿼리 문자열 매개 변수를 검색하고 처리할 수 있습니다.

설명

일반적인 Windows Presentation Foundation 애플리케이션을 시작할 때를 포함 하 여 다양 한 초기화 작업을 수행할 수 있습니다.

  • 명령줄 매개 변수 처리

  • 기본 창을 엽니다.

  • 애플리케이션 범위 리소스를 초기화합니다.

  • 애플리케이션 범위 속성을 초기화 합니다.

각각 XAML(StartupUri 및 )을 사용하여 기본 창 및 Resources애플리케이션 scope 리소스를 선언적으로 지정할 수 있습니다. 경우에 따라 단, 리소스 또는 애플리케이션의 주 창만 확인할 수 있습니다 프로그래밍 방식으로 런타임 시. 또한 애플리케이션 범위 속성 및 명령줄 매개 변수에 사용할 수 있습니다만 프로그래밍 방식으로. 다음을 포함하여 이벤트를 처리하여 Startup 프로그래밍 방식 초기화를 수행할 수 있습니다.

  • 이벤트 처리기에 전달되는 클래스의 StartupEventArgs 속성에서 Args 사용할 수 있는 명령줄 매개 변수를 Startup 획득하고 처리합니다.

  • 애플리케이션 범위 리소스를 사용 하 여 초기화 된 Resources 속성입니다.

  • 애플리케이션 범위 속성을 사용 하 여 초기화 된 Properties 속성입니다.

  • 하나 이상의 창을 인스턴스화하고 표시합니다.

참고

명령줄 매개 변수는 개체의 Environment 정적 GetCommandLineArgs 메서드를 호출하여 가져올 수도 있습니다. 그러나 를 GetCommandLineArgs 실행하려면 완전 신뢰가 필요합니다.

XAML을 사용하여 설정하는 StartupUri 경우 생성된 기본 창은 이벤트가 처리될 때까지 Startup 개체의 Application 속성 또는 Windows 속성에서 MainWindow 사용할 수 없습니다. 시작하는 동안 기본 창에 액세스해야 하는 경우 이벤트 처리기에서 새 창 개체를 수동으로 만들어야 합니다Startup.

참고

애플리케이션에서 를 사용하여 CredentialPolicy 자격 증명 정책을 지정하는 경우 가 발생한 후 Startup 를 설정 CredentialPolicy 해야 합니다. 그렇지 않으면 WPF는 이벤트가 발생한 직후 Startup 기본 내부 정책으로 설정합니다.

이벤트 처리기에 Startup 전달되는 명령줄 인수는 XBAP(XAML 브라우저 애플리케이션)에 전달되는 URL 쿼리 문자열 매개 변수와 동일하지 않습니다.

적용 대상

추가 정보