更改进度条的大小

时间:2016-10-01 07:15:25

标签: c# xaml win-universal-app uwp

我有进度条,但点太小,我怎么能把它变大? 我没有找到任何可以改变点大小的属性。高度/宽度会改变点可以移动的区域

Xaml代码

<Grid // here width ="2560" height="1600"
  <ProgressBar
        Grid.Row="0"
        Grid.Column="1"
        IsIndeterminate="True"
        Visibility="{Binding MainInstance.Loading, Converter={StaticResource BooleanToVisibilityConverter}}" 
        VerticalAlignment="Stretch" 
        HorizontalAlignment="Stretch"/>
</Grid

3 个答案:

答案 0 :(得分:4)

有几个选项可以解决这个问题,由您选择的是哪个选项:

  • 更改ProgressBar的默认样式,并增加Ellipse WidthHeight属性。您可以在Blend中执行此操作,也可以从
  • 复制样式
  

C:\ Program Files(x86)\ Windows Kits \ 10 \ DesignTime \ CommonConfiguration \ Neutral \ UAP \ 10.0.14393.0 \ Generic \ generic.xaml

  • 使用ViewBox控件环绕ProgressBar。此控件将所有内容调整为可用大小。
  • 使用您自己的模板设置属性创建模板化控件。

我创建了一个小sample on GitHub来向您展示所有可能性的代码。

enter image description here

答案 1 :(得分:0)

ProgressRing不支持任何属性来更改点的宽度和高度,并且当ProgressRing具有更大的空间时,点将是最大的。 您可以使用获得ProgressBar的Grid,并且Grid是永久位置。 你使用Grid.Row="0" Grid.Column="1" VerticalAlignment="Top",你应该在Grid中编写代码。你应该为Grid提供大空间。 ProgressBar应该使用HorizontalAlignment="Stretch"和VerticalAlignment相同。你的宽度和高度都很大,点的宽度和高度都很大。

    <ProgressRing Margin="10,10,10,10"
                 IsActive="True"
                 Visibility="{x:Bind View.Visibility,Mode=OneWay}"
                 HorizontalAlignment="Stretch"
                 VerticalAlignment="Stretch" />

我在顶部网格中写道。你可以看到我的应用程序的ProgressRing有一个很大的点。

http://jycloud.9uads.com/web/GetObject.aspx?filekey=16bcfec973e910632e04b3990c274a1c

答案 2 :(得分:0)

更改ProgressBar的点大小的最简单方法是使用ScaleTransform:

<ProgressBar ...>
    <ProgressBar.RenderTransform>
        <ScaleTransform ScaleX="2" ScaleY="2" />
    </ProgressBar.RenderTransform>
</ProgressBar>