[英]UWP Custom TitleBar button could not be clicked
我有一個自定義 TitleBar,其視圖已擴展到標題欄,這意味着我已經這樣做了:
Windows.ApplicationModel.Core.CoreApplication.GetCurrentView().TitleBar.ExtendViewIntoTitleBar = true;
您可以從下圖中看到,它只是一個后退按鈕(當您導航到其他頁面時可見)和一個TextBlock
。 但是,我無法單擊該按鈕。 這是為什么? 我已將標題欄放在NavigationView
上方。 而且我也找不到該按鈕的Background
。 我已將其設置為透明,它應該顯示它下面的顏色,但它沒有。 我也嘗試過改變它周圍元素的背景,但我的努力沒有奏效。
我發布的圖像只是 window 窄時的示例,當 window 展開時仍然是相同的情況。
這是該主頁的 XAML 的結構,源代碼在這里:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<NavigationView
x:Name="MainNavigationView"
Grid.Row="1"
IsBackButtonVisible="Collapsed"
IsBackEnabled="True"
Style="{StaticResource MainNavigationViewStyle}"
TabNavigation="Cycle">
<Frame
x:Name="NaviFrame"
IsNavigationStackEnabled="True"
Navigated="NaviFrame_Navigated" />
</NavigationView>
<Grid
x:Name="AppTitleBar"
Height="32"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Background="Transparent">
<Border
x:Name="AppTitleBorder"
Width="{x:Bind MainNavigationView.OpenPaneLength}"
HorizontalAlignment="Left"
VerticalAlignment="Stretch"
Background="Transparent" />
<StackPanel Orientation="Horizontal">
<Button
x:Name="BackButton"
Background="Transparent"
Click="BackButton_Click"
Style="{StaticResource BackButtonStyle}"
Visibility="Collapsed" />
<TextBlock
x:Name="AppTitle"
Height="{x:Bind AppTitleBar.Height, Mode=OneWay}"
Padding="10,8"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{x:Bind appmodel:Package.Current.DisplayName}"
Visibility="Collapsed" />
</StackPanel>
</Grid>
<Button
x:Name="FakeTogglePaneButton"
Grid.Row="1"
Background="{StaticResource MinimalTitleBarColor}"
Click="FakeTogglePaneButton_Click"
Style="{ThemeResource PaneToggleButtonStyle}"
Visibility="Collapsed" />
<local:MediaControl
x:Name="MainMediaControl"
Grid.Row="2"
Mode="Main" />
</Grid>
在Page_Loaded
方法中,您已將AppTitleBar
Grid 設置為應用程序的標題欄。 那就是問題所在。 您設置為應用程序標題欄的FrameworkElement
應該是無響應的,因為通常您通過拖動標題欄來移動應用程序 window。
在響應部分下方放置一個Rectangle
或Border
,並將該Rectangle
或Border
設置為標題欄。
您可以查看此博客以獲取更多詳細信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.