zoukankan      html  css  js  c++  java
  • WPF自定义进度条

    <!--进度条 4812-->
    <LinearGradientBrush x:Key="ProgressBarIndicatorAnimatedFill" StartPoint="0,0" EndPoint="1,0">
    <GradientStop Color="#00EEEE" Offset="0.2"/>
    <GradientStop Color="#00EEEE" Offset="0.4"/>
    <GradientStop Color="#00EEEE" Offset="0.6"/>
    <GradientStop Color="#00EEEE" Offset="1"/>
    </LinearGradientBrush>
    <Style x:Key="ProgressBarBaseStyle" TargetType="{x:Type ProgressBar}">
    <Setter Property="Height" Value="20"/>
    <Setter Property="Background" Value="White"/>
    <Setter Property="BorderBrush" Value="#19000000"/>
    <Setter Property="BorderThickness" Value="0,0,0,0"/>
    <Setter Property="Template">
    <Setter.Value>
    <ControlTemplate TargetType="{x:Type ProgressBar}">
    <Grid>
    <Border x:Name="TemplateRoot" CornerRadius="4" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}">
    <Border.Effect>
    <BlurEffect Radius="2"></BlurEffect>
    </Border.Effect>
    </Border>
    <Grid Margin="{TemplateBinding BorderThickness}">
    <Rectangle x:Name="PART_Track"/>
    <Grid HorizontalAlignment="Left">
    <Decorator x:Name="PART_Indicator" HorizontalAlignment="Left" Margin="0,-1,0,0">
    <Border CornerRadius="4" x:Name="Animation" ClipToBounds="true" Background="{TemplateBinding Foreground}">
    <Rectangle x:Name="PART_GlowRect" Fill="{StaticResource ProgressBarIndicatorAnimatedFill}" HorizontalAlignment="Left" Margin="0,0,0,0" Width="100"/>
    </Border>
    </Decorator>
    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
    <Label FontSize="12" Foreground="#000" Padding="0,0,0,0" Content="{TemplateBinding Value}"></Label>
    <Label FontSize="12" Foreground="#000" Padding="0,0,0,0" Content="%"></Label>
    </StackPanel>
    </Grid>
    </Grid>
    </Grid>
    <ControlTemplate.Triggers>
    <Trigger Property="Orientation" Value="Vertical">
    <Setter Property="LayoutTransform" TargetName="TemplateRoot">
    <Setter.Value>
    <RotateTransform Angle="-90"/>
    </Setter.Value>
    </Setter>
    </Trigger>
    </ControlTemplate.Triggers>
    </ControlTemplate>
    </Setter.Value>
    </Setter>
    </Style>
    <Style x:Key="progress-bar-gif" BasedOn="{StaticResource ProgressBarBaseStyle}" TargetType="{x:Type ProgressBar}">
    <Setter Property="Foreground" Value="#00EEEE"/>
    </Style>
    
    使用方法: <ProgressBar Style="{DynamicResource progress-bar-gif}"  Name="DownProgressBar"></ProgressBar>  在后台填写数值就可以了
    每天进步一点点。
  • 相关阅读:
    《ASP.NET Core跨平台开发从入门到实战》Web API自定义格式化protobuf
    .NET Core中文分词组件jieba.NET Core
    .NET Core 2.0及.NET Standard 2.0
    Visual Studio 2017 通过SSH 调试Linux 上.NET Core
    Visual Studio 2017 ASP.NET Core开发
    Visual Studio 2017正式版离线安装及介绍
    在.NET Core 上运行的 WordPress
    IT人员如何开好站立会议
    puppeteer(二)操作实例——新Web自动化工具更轻巧更简单
    puppeteer(一)环境搭建——新Web自动化工具(同selenium)
  • 原文地址:https://www.cnblogs.com/snow-zhang/p/10103054.html
Copyright © 2011-2022 走看看