Window.SetTitleBar(UIElement) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
가 인 경우 XAML 요소에서 제목 표시줄 동작을 ExtendsContentIntoTitleBar
true
사용하도록 설정합니다.
public:
virtual void SetTitleBar(UIElement ^ titleBar) = SetTitleBar;
void SetTitleBar(UIElement const& titleBar);
public void SetTitleBar(UIElement titleBar);
function setTitleBar(titleBar)
Public Sub SetTitleBar (titleBar As UIElement)
매개 변수
- titleBar
- UIElement
제목 표시줄 동작을 지원하는 요소입니다.
예제
이 예제에서는 창의 콘텐츠 영역을 확장하고 시스템 제목 표시 Grid
줄을 아이콘 및 제목 텍스트가 포함된 로 바꾸는 방법을 보여 줍니다.
<Window ... >
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="32"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid x:Name="AppTitleBar">
<Image Source="Images/WindowIcon.png"
HorizontalAlignment="Left"
Width="16" Height="16"
Margin="8,0"/>
<TextBlock x:Name="AppTitleTextBlock" Text="App title"
TextWrapping="NoWrap"
Style="{StaticResource CaptionTextBlockStyle}"
VerticalAlignment="Center"
Margin="28,0,0,0"/>
</Grid>
<NavigationView Grid.Row="1">
<!-- Page content -->
</NavigationView>
</Grid>
</Window>
public MainWindow()
{
this.InitializeComponent();
ExtendsContentIntoTitleBar = true;
SetTitleBar(AppTitleBar); // skip call to this api to get a default custom title bar
}
설명
시스템 제목 표시줄을 앱의 사용자 지정 제목 표시줄 UI로 바꾸려면 이 메서드를 호출합니다. 지정된 요소는 끌어서 두 번 클릭하여 크기를 조정하고 마우스 오른쪽 단추를 클릭하여 시스템 메뉴를 표시하는 등 시스템 제목 표시줄과 동일한 시스템 상호 작용을 지원합니다. 따라서 포인터 입력(마우스, 터치, 펜 등)은 요소 및 해당 자식 요소에서 더 이상 인식되지 않습니다.
지정한 요소가 차지하는 사각형 영역은 요소가 다른 요소에 의해 차단되거나 요소가 투명하더라도 포인터를 위해 제목 표시줄 역할을 합니다.
제목 표시줄 영역에 대화형 요소를 배치하려는 경우 InputNonClientPointerSource API를 사용할 수 있습니다. 예제는 WinUI 갤러리 샘플의 제목 표시줄 페이지를 참조하세요.
제목 표시줄로 콘텐츠 확장
사용자 지정 제목 표시줄을 지정하려면 ExtendsContentIntoTitleBar 를 true
로 설정하여 기본 시스템 제목 표시줄을 숨겨야 합니다. 가 이false
면 ExtendsContentIntoTitleBar
에 대한 SetTitleBar
호출이 아무런 영향을 주지 않습니다. 사용자 지정 제목 표시줄 요소는 앱 창의 본문에 일반 UI 요소로 표시되며 제목 표시줄 동작을 얻지 못합니다.
ExtendsContentIntoTitleBar를 로 true
설정했지만 호출 SetTitleBar
(또는 인수를 사용하여 null
호출SetTitlebar
)하지 않으면 기본 사용자 지정 제목 표시줄이 제공됩니다. 이 기본 제목 표시줄은 위치, 너비 및 높이에서 시스템 제목 표시줄을 직접 대체합니다. 특수 제목 표시줄을 원하는 경우 'UIElement'를 사용하여 SetTitleBar를 호출하고 해당 UIElement
위치, 너비 및 높이에 제목 표시줄 영역을 가져올 수 있습니다. 클라이언트 UIElement
가 아닌 영역뿐만 아니라 앱의 콘텐츠 내에서 어디서나 호스트할 수 있습니다.
제목 표시줄 요소
단일 요소만 제목 표시줄로 지정할 수 있습니다. 여러 요소가 필요한 경우 단일 컨테이너(예: Grid 또는 StackPanel)의 자식 요소로 지정할 수 있습니다.
사용자 지정 제목 표시줄은 앱 내에 중첩되지 않은 경우에 가장 잘 작동합니다. XAML 트리 내에서 UIElement를 심 층 중첩하면 예측할 수 없는 레이아웃 동작이 발생할 수 있습니다. 제목 표시줄은 항상 사각형 모양의 입니다. 직사각형 UIElement
이 아닌 경우 직사각형 경계 사각형이 제목 표시줄의 크기에 사용됩니다.
색
사용자 지정 제목 표시줄은 구현에 AppWindow 제목 표시줄 을 사용합니다. 따라서 , ButtonForegroundColor
등과 같은 ButtonBackgroundColor
색에 AppWindowTitleBar 테마 API를 사용할 수 있습니다.
이전 버전(예: WindowCaptionBackground
)에서 사용된 리소스 기반 테마는 더 이상 사용되지 않으며 아무런 영향을 주지 않습니다.