XAML UWA 滚动条未显示

本文关键字:显示 滚动条 UWA XAML | 更新日期: 2023-09-27 17:56:20

在下面的代码中,滚动条控件不显示,但滑块控件显示。 如果我只需通过将滚动条更改为滑块即可将滚动条控件更改为滑块控件,则可以完美运行,但是我更喜欢滚动条控件的外观而不是应用程序的滑块。

我使用 Win2D 在动画画布中手动绘制一个大的 1000 单元格 x 1000 单元格网格,但仅显示使用滚动条(滑块)位置滚动到的部分。

使用滑块控件时可以完美运行。

<Page
x:Class="TrappedEditor.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:TrappedEditor"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:canvas="using:Microsoft.Graphics.Canvas.UI.Xaml"
Unloaded="Page_Unloaded"
mc:Ignorable="d">
    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" SizeChanged="Grid_SizeChanged">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="1*"/>
            <ColumnDefinition Width="50"/>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="50"/>
        </Grid.RowDefinitions>
        <ScrollBar x:Name="scrollBarVertical" Visibility="Visible" Grid.Row="0" Grid.Column="1" ValueChanged="scrollBarVertical_ValueChanged" Orientation="Vertical" Minimum="0" Maximum="1000"/>
        <Slider x:Name="scrollBarHorizontal" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="1" Orientation="Horizontal" ValueChanged="scrollBarHorizontal_ValueChanged" Minimum="0" Maximum="1000"/>
        <canvas:CanvasAnimatedControl Grid.Row="0" Grid.Column="0" x:Name="canvas" Draw="canvas_Draw" CreateResources="canvas_CreateResources"/>
    </Grid>

XAML UWA 滚动条未显示

解决了

这个问题。添加指示器模式="鼠标指示器"按预期显示滚动条。

例如:

<ScrollBar x:Name="scrollBarVertical" IndicatorMode="MouseIndicator" Visibility="Visible" Grid.Row="0" Grid.Column="1" ValueChanged="scrollBarVertical_ValueChanged" Orientation="Vertical" Minimum="0" Maximum="1000"/>

TLDR;

扭曲您需要在

ScrollView中滚动的所有内容。