ProgressRing 类

定义

表示指示操作进度的控件。 典型的视觉外观是环形的“微调器”。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅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 ProgressRing : Control
/// [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 ProgressRing : Control
[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 ProgressRing : Control
[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 ProgressRing : Control
Public Class ProgressRing
Inherits Control
继承
ProgressRing
属性
Microsoft.UI.Xaml.CustomAttributes.MUXContractPropertyAttribute MarshalingBehaviorAttribute ThreadingAttribute VersionAttribute ContractVersionAttribute

示例

提示

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

WinUI 3 库和 WinUI 2 库应用包括大多数 WinUI 3 和 WinUI 2 控件、特性和功能的交互式示例。

如果已安装,请单击以下链接将其打开:WinUI 3 库WinUI 2 库

如果未安装,可以从 Microsoft Store 下载 WinUI 3 库WinUI 2 库

还可以从 GitHub 获取这两种应用的源代码(对 WinUI 3 使用 main 分支,对 WinUI 2 使用 winui2 分支)。

提示

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

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

此示例演示如何在代码中设置 ProgressRing 的 IsActive 属性。 ToggleSwitch 用于打开或关闭ProgressRing 控件。

<StackPanel>
   <muxc:ProgressRing IsActive="{x:Bind ProgressToggle.IsOn, Mode=OneWay}" />
   <ToggleSwitch x:Name="ProgressToggle" Header="Toggle work" OffContent="Do work" OnContent="Working" IsOn="True" />
</StackPanel>

此示例演示如何在代码中设置 IsIndeterminate 属性,以显示基于 value 属性的进度环填充。

<StackPanel>
   <muxc:ProgressRing IsIndeterminate="false">
   <muxc:NumberBox x:Name="ProgressValue" Minimum="0" Maximum="100" SpinButtonPlacementMode="Inline" ValueChanged="ProgressValue_ValueChanged"/>
</StackPanel>
 private void ProgressValue_ValueChanged(Microsoft.UI.Xaml.Controls.NumberBox sender, Microsoft.UI.Xaml.Controls.NumberBoxValueChangedEventArgs args)
{
   if (!sender.Value.IsNaN())
   {
         ProgressRing2.Value = sender.Value;
   }
   else
   {
         sender.Value = 0;
   }
}

注解

ProgressRing 是一个控件,它通过以下两种样式之一直观地指示操作的进度:重复进行动画处理的环,或基于值填充的圆环。

不确定进度环控件确定进度环控件

使用 ProgressRing 直观地指示操作正在进行。 设置 IsActive 属性以打开或关闭 ProgressRing。 如果 IsActive 为 false,则不显示 ProgressRing,但在 UI 布局中为其保留空间。 若要不为 ProgressRing 保留空间,请将其 Visibility 属性设置为 Collapsed

IsIndeterminate 属性确定 ProgressRing 的外观。

  • IsIndeterminate 设置为 true 可显示重复动画。 (这是默认)
  • IsIndeterminate 设置为 false 以根据值填充条形图。 当 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 还包括可用于在不修改控件模板的情况下修改不同视觉状态中的控件颜色的资源。 修改这些资源是首选设置属性,如 BackgroundForeground。 有关详细信息,请参阅 XAML 样式一文的轻量级样式部分。

构造函数

ProgressRing()

初始化 ProgressRing 类的新实例。

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

属性

DeterminateSource

表示指示操作进度的控件。 典型的视觉外观是环形的“微调器”。

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

DeterminateSourceProperty

标识 DeterminateSource 依赖属性。 (不支持。)

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

IndeterminateSource

表示指示操作进度的控件。 典型的视觉外观是环形的“微调器”。

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

IndeterminateSourceProperty

标识 IndeterminateSource 依赖属性。 (不支持。)

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

IsActive

获取或设置一个值,该值指示 ProgressRing 是否显示进度。

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

IsActiveProperty

标识 IsActive 依赖属性。

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

IsIndeterminate

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

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

IsIndeterminateProperty

标识 IsIndeterminate 依赖属性。

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

Maximum

获取或设置 range 元素允许的最高

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

MaximumProperty

标识 Maximum 依赖属性。

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

Minimum

获取或设置 range 元素允许的最小 Value

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

MinimumProperty

标识 Minimum 依赖属性。

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

TemplateSettings

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

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

Value

获取或设置进度环的当前数量级。

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

ValueProperty

标识 Value 依赖属性。

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

适用于

另请参阅