ProgressBar 类

定义

表示指示操作进度的控件。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

/// [Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Version(1)]
class ProgressBar : RangeBase
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 65536)]
class ProgressBar : RangeBase
[Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Version(1)]
public class ProgressBar : RangeBase
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 65536)]
public class ProgressBar : RangeBase
Public Class ProgressBar
Inherits RangeBase
继承
ProgressBar
属性
Microsoft.UI.Xaml.CustomAttributes.MUXContractPropertyAttribute MarshalingBehaviorAttribute ThreadingAttribute VersionAttribute ContractVersionAttribute

示例

提示

有关详细信息、设计指南和代码示例,请参阅 进度控件

WinUI 2 库应用包括大多数 WinUI 2 控件、特性和功能的交互式示例。 通过 Microsoft Store 获取应用,或在 GitHub 上获取源代码。

下面演示如何设置不确定的 ProgressBar 和基本确定的 ProgressBar,其中值依赖于 RepeatButton 单击。

<!-- xmlns:muxc="using:Microsoft.UI.Xaml.Controls" -->

<StackPanel x:Name="LayoutRoot">
    <StackPanel BorderThickness="4" BorderBrush="Black" Padding="12">
        <TextBlock Text="Indeterminate Progress Bar"/>
        <muxc:ProgressBar IsIndeterminate="True" Margin="0,12"/>
    </StackPanel>
    <StackPanel BorderBrush="Black" BorderThickness="4" Padding="12">
        <TextBlock Text="Value-Based Progress Bar"/>
        <muxc:ProgressBar x:Name="progressBar1" Value="0" Maximum="200" Margin="0,12"/>
        <RepeatButton Content="Press and hold" Click="RepeatButton_Click"/>
    </StackPanel>
</StackPanel>
private static int _clicks = 0;

private void RepeatButton_Click(object sender, RoutedEventArgs e)
{
    _clicks += 1;
    progressBar1.Value = _clicks;
    if (_clicks >= progressBar1.Maximum) _clicks = 0;
}

注解

ProgressBar 控件通过以下两种样式之一直观地指示操作的进度:显示重复模式的条形或基于值填充的条形。

不确定和确定进度栏控件

IsIndeterminate 属性确定 ProgressBar 的外观。

  • IsIndeterminate 设置为 true 以显示重复模式。 用于不确定进度的替代控件是 ProgressRing
  • IsIndeterminate 设置为 false 以根据值填充条形图。 (这是 default.) 当 IsIndeterminatefalse 时,可以使用 “最小值 ”和“ 最大值 ”属性指定范围。 默认情况下 ,最小值 为 0, 最大值 为 100。 若要指定进度值,请设置 Value 属性。

控件样式和模板

可以修改默认 的 StyleControlTemplate ,为控件提供唯一的外观。 有关修改控件样式和模板的信息,请参阅 XAML 样式。 文件中包含 generic.xaml 定义控件外观的默认样式、模板和资源。 出于设计目的, generic.xaml 随 WinUI (Microsoft.UI.Xaml) NuGet 包一起安装。 默认情况下,此位置是 \Users\<username>\.nuget\packages\microsoft.ui.xaml\<version>\lib\uap10.0\Microsoft.UI.Xaml\Themes\generic.xaml。 不同版本的 WinUI 的样式和资源可能具有不同的值。

XAML 还包括可用于在不修改控件模板的情况下修改不同视觉状态下控件颜色的资源。 修改这些资源优先于设置 背景前台等属性。 有关详细信息,请参阅 XAML 样式一文的轻量级样式部分。

构造函数

ProgressBar()

初始化 ProgressBar 类的新实例。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

属性

IsIndeterminate

获取或设置一个值,该值指示进度栏是使用重复模式报告常规进度,还是基于 Value 属性报告进度。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

IsIndeterminateProperty

标识 IsIndeterminate 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

ShowError

获取或设置一个值,该值指示进度栏是否应使用向用户传达 错误 状态的视觉状态。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

ShowErrorProperty

标识 ShowError 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

ShowPaused

获取或设置一个值,该值指示进度栏是否应使用向用户传达 暂停 状态的视觉状态。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

ShowPausedProperty

标识 ShowPaused 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TemplateSettings

获取一个 对象,该对象提供可在定义 ProgressBar 控件的模板时作为 TemplateBinding 源引用的计算值。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TemplateSettingsProperty

标识 TemplateSettings 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

适用于

另请参阅