Window 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Window
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="Content")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Window
Public Class Window
- 상속
- 특성
예제
OnLaunched
다음 코드 예제에서는 Microsoft Visual Studio의 데스크톱 템플릿에서 WinUI에 대해 생성된 OnLaunched 메서드 재정의를 보여줍니다. 이 코드는 에서 Window
Activate 메서드를 일반적으로 사용하는 방법을 보여 줍니다.
protected override void OnLaunched(Microsoft.UI.Xaml.LaunchActivatedEventArgs args)
{
m_window = new MainWindow();
m_window.Activate();
}
private Window m_window;
새 창 만들기
앱에서 각 창을 명시적으로 만들 수 있습니다. 두 개 이상의 창을 만들려면 WindowsAppSDK에 대한 1.0.1 업데이트가 필요하며 단일 스레드로 제한됩니다.
var window = new Window();
window.Content = new TextBlock() { Text = "Hello" };
window.Activate();
태그에서 새 창을 정의할 수도 있습니다.
<Window
x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TextBlock>Hello</TextBlock>
</Window>
해당 코드 숨김을 사용하여 다음을 수행합니다.
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
}
...
var window = new MainWindow();
window.Activate();
설명
앱에서 스레드당 둘 Window
이상을 만들 수 있습니다. 예제에서 새 창 만들기를 참조하세요.
Window
는 IWindowNative 을 구현하여 Window의 HWND(WindowHandle)를 통해 interop을 사용하도록 설정합니다.
일반적으로 는 Window
앱 UI를 나타내는 콘텐츠로 UIElement를 설정하는 데 사용됩니다. 이는 일반적으로 앱 활성화(예: OnLaunched 재정의)의 일부로 수행되며 창의 수명 동안 창 콘텐츠를 변경할 수 있습니다.
초기 활성화에 사용된 모든 Window
항목에서 활성화를 호출해야 합니다. Microsoft Visual Studio의 기본 앱 템플릿을 사용하는 경우 Window.Activate 는 App.xaml 코드 숨김 파일에 포함됩니다.
생성자
Window() |
Window 클래스의 새 instance 초기화합니다. |
속성
AppWindow |
|
Bounds |
유효(보기) 픽셀 단위로 애플리케이션 창의 높이와 너비를 포함하는 Rect 값을 가져옵니다. |
Compositor |
이 창의 Compositor 를 가져옵니다. |
Content |
애플리케이션 창의 시각적 루트를 가져오거나 설정합니다. |
CoreWindow |
데스크톱 앱은 항상 이 속성에 대해 를 반환 |
Current |
데스크톱 앱은 항상 이 속성에 대해 를 반환 |
Dispatcher |
항상 Windows 앱 SDK 앱에서 를 반환 참고
|
DispatcherQueue |
창의 |
ExtendsContentIntoTitleBar |
앱 콘텐츠의 공간을 만들기 위해 창의 기본 제목 표시줄을 숨길지 여부를 지정하는 값을 가져오거나 설정합니다. |
SystemBackdrop |
이 |
Title |
창 제목에 사용되는 문자열을 가져오거나 설정합니다. |
Visible |
창이 표시되는지 여부를 보고하는 값을 가져옵니다. |
메서드
Activate() |
애플리케이션 창을 포그라운드로 가져오고 입력 포커스를 설정하여 애플리케이션 창을 활성화하려고 시도합니다. |
Close() |
애플리케이션 창을 닫습니다. |
SetTitleBar(UIElement) |
가 인 경우 XAML 요소에서 제목 표시줄 동작을 |
이벤트
Activated |
창이 성공적으로 활성화되었을 때 발생합니다. |
Closed |
창이 닫혔을 때 발생합니다. |
SizeChanged |
앱 창이 처음 렌더링되었거나 렌더링 크기를 변경한 경우에 발생합니다. |
VisibilityChanged |
Visible 속성의 값이 변경되면 발생합니다. |