我正在使用进度栏控件,但是我需要使用旧的Windows风格,就像我们在progress bar第一个窗口中有酒吧一样:
下图显示了使用视觉样式的进度条。控件的外观将取决于操作系统
但是它必须独立于os才能帮助我朝正确的方向
答案 0 :(得分:0)
这应该为您解决问题!随时根据您的需要进行修改!
<Style TargetType="{x:Type ProgressBar}">
<Setter Property="Foreground" Value="DarkBlue"/>
<Setter Property="BorderBrush" Value="Gray"/>
<Setter Property="Padding" Value="1"/>
<Setter Property="Value" Value="10"/>
<Setter Property="Minimum" Value="0"/>
<Setter Property="Maximum" Value="100"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ProgressBar}">
<Border BorderThickness="{TemplateBinding BorderThickness}" Width="{TemplateBinding Width}" MinWidth="10" Height="{TemplateBinding Height}" BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}">
<Viewbox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Stretch="Fill" Margin="{TemplateBinding Padding}">
<Grid Width="{TemplateBinding Maximum}" Height="50">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid Background="{TemplateBinding Foreground}" Grid.Column="0" Width="{TemplateBinding Value}">
</Grid>
</Grid>
</Viewbox>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
这是一种非常基本的样式,但可以作为良好的基础。如果您不熟悉样式,则只需将此代码放置在Window的<Window.Resources>
标签内即可