WPF Tutorial 강좌 번역 #8
App.xaml로 작업하기
App.xaml은 응용 프로그램의 선언적 시작점입니다. Visual Studio는 App.xaml.cs. 코드 숨김 파일을 포함하여 새 WPF 응용 프로그램을 시작할 때 자동으로이 파일을 만듭니다. 두 파일이 부분 클래스 인 Window와 매우 비슷하게 작동하여 함께 작업하여 마크 업 (XAML)과 코드 숨김에서 모두 작업 할 수 있습니다.
App.xaml.cs는 WPF Windows 응용 프로그램의 중심 클래스 인 Application 클래스를 확장합니다. .NET은 지침을 시작하기 위해이 클래스로 이동 한 다음 원하는 창 또는 페이지를 시작합니다. 또한 응용 프로그램 시작, 처리되지 않은 예외 등과 같은 중요한 응용 프로그램 이벤트를 구독 할 수있는 곳이기도합니다.
App.xaml 파일에서 가장 일반적으로 사용되는 기능 중 하나는 전역 스타일과 같이 응용 프로그램 전체에서 사용 및 액세스 할 수있는 전역 리소스를 정의하는 것입니다. 이에 대해서는 나중에 자세히 설명합니다.
App.xaml 구조
<Application x:Class="WpfTutorialSamples.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="MainWindow.xaml"> <Application.Resources> </Application.Resources> </Application>여기서 주목해야 할 것은 StartupUri 속성입니다. 이것은 실제로 응용 프로그램이 시작될 때 시작할 창이나 페이지를 지시하는 부분입니다. 이 경우 MainWindow.xaml이 시작되지만 다른 창을 시작점으로 사용하려면 간단히 변경할 수 있습니다.
어떤 경우에는 첫 번째 창이 표시되는 방법과시기를보다 자세히 제어해야합니다. 이 경우 StartupUri 속성과 값을 제거한 다음 코드 숨김에서 대신 수행 할 수 있습니다. 이것은 아래에서 설명 할 것입니다.
App.xaml.cs 구조
일치하는 App.xaml.cs는 일반적으로 새 프로젝트에서 다음과 같이 보입니다.
using System; using System.Collections.Generic; using System.Windows; namespace WpfTutorialSamples { public partial class App : Application { } }이 클래스가 Application 클래스를 확장하는 방법을 볼 수 있으므로 응용 프로그램 수준에서 작업 할 수 있습니다. 예를 들어 시작 창을 수동으로 만들 수있는 Startup 이벤트에 가입 할 수 있습니다.
<예제>
<Application x:Class="WpfTutorialSamples.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Startup="Application_Startup"> <Application.Resources></Application.Resources> </Application>StartupUri가 Startup 이벤트에 대한 구독으로 어떻게 대체되었는지 확인합니다 (XAML을 통한 이벤트 구독은 다른 장에서 설명 함). code-behind에서 다음과 같은 이벤트를 사용할 수 있습니다.
using System; using System.Collections.Generic; using System.Windows; namespace WpfTutorialSamples { public partial class App : Application { private void Application_Startup(object sender, StartupEventArgs e) { // Create the startup window MainWindow wnd = new MainWindow(); // Do stuff here, e.g. to the window wnd.Title = "Something else"; // Show the window wnd.Show(); } } }StartupUri 속성을 사용하는 것과 비교하면이 예제의 멋진 점은 시작 창을 표시하기 전에 시작 창을 조작한다는 것입니다. 여기서 우리는 제목을 변경하는데, 그다지 유용하지는 않지만 이벤트에 가입하거나 스플래시 화면을 표시 할 수도 있습니다. 당신이 모든 통제를 가질 때, 많은 가능성이 있습니다. 이 튜토리얼의 다음 기사에서는이 중 몇 가지를 자세히 살펴볼 것이다.
댓글 없음:
댓글 쓰기