На сайте DevExpress в документации для v.17.2 (я использую DevExpress v15.2, но другой нет и раньше отличий не проявлялось) указано, что якобы цвет некой левой части задаётся свойством AdditionalForeground
ProgressBarEdit.AdditionalForeground Property
Specifies the color of the left side of the ProgressBarEdit. This is a dependency property.
а цвет некой правой части задаёт Foreground
To specify the color of the right side of the ProgressBarEdit, use the Foreground property.
Проблема в том, что оно не работает — только Foreground задаёт цвет текста, отображаемого поверх контрола; задание св-ва Background тоже ничего не меняет.
Т__Т
XAML:
<dxe:ProgressBarEdit Name="fact1" Background="Red" Foreground="Red" AdditionalForeground ="Red" Value="77" Orientation="Vertical" VerticalAlignment="Stretch" Content="ФАКТ" ShowBorder="False" ContentDisplayMode="Content" IsPercent="True">
<dxe:ProgressBarEdit.StyleSettings>
<dxe:ProgressBarStyleSettings />
</dxe:ProgressBarEdit.StyleSettings>
</dxe:ProgressBarEdit>
Подскажите, как изменить цвет(прогресса/фона)? Либо что тогда за левая/правая части имелись в виду?
Необходимо переопределить PanelBackgroundHorizontalTemplate
и PanelLeftSideHorizontalTemplate
, чтобы изменить цвет для индикатора выполнения и управления фоном в элементе управления ProgressBarEdit
.
Пример кода:
<dx:DXWindow
x:Class="DXWPFApplication31.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:DXWPFApplication31"
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxet="http://schemas.devexpress.com/winfx/2008/xaml/editors/themekeys"
Title="DXApplication" Height="185" Width="449"
SnapsToDevicePixels="True" UseLayoutRounding="True"
dx:ThemeManager.ThemeName="MetropolisDark"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
>
<Window.Resources>
<ControlTemplate x:Key="{dxet:ProgressBarEditThemeKey ResourceKey=PanelBackgroundHorizontalTemplate, IsThemeIndependent=true}" TargetType="{x:Type ContentControl}">
<Border>
<Border.Background>
<LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
<GradientStop Color="Aqua"/> <!--set background-->
</LinearGradientBrush>
</Border.Background>
<ContentPresenter/>
</Border>
</ControlTemplate>
<ControlTemplate x:Key="{dxet:ProgressBarEditThemeKey ResourceKey=PanelLeftSideHorizontalTemplate}" TargetType="{x:Type ContentControl}">
<Border Margin="1" CornerRadius="2">
<Border.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<!--<GradientStop Color="#FF6389C1" Offset="0.004" />
<GradientStop Color="#FF7095CA" Offset="1" />
<GradientStop Color="#FF305897" Offset="0.5" />
<GradientStop Color="#FF244985" Offset="0.5" />-->
<GradientStop Color="Green"/><!--set background-->
</LinearGradientBrush>
</Border.Background>
</Border>
</ControlTemplate>
<ControlTemplate x:Key="{dxet:ProgressBarEditStyleThemeKey ResourceKey=PanelTemplateHorizontal, IsThemeIndependent=true}" TargetType="{x:Type dxe:RangeEditBasePanel}">
<Grid>
<Grid x:Name="root">
<Grid.Resources>
<dxe:GridLengthConverter x:Key="GridLengthConverter" />
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition x:Name="leftColumn" Width="{Binding Path=(dxe:RangeEditBaseInfo.LayoutInfo).LeftSidePosition, Converter={StaticResource GridLengthConverter}}" />
<ColumnDefinition x:Name="rightColumn" Width="{Binding Path=(dxe:RangeEditBaseInfo.LayoutInfo).RightSidePosition, Converter={StaticResource GridLengthConverter}}" />
</Grid.ColumnDefinitions>
<ContentControl x:Name="back" Grid.ColumnSpan="2" Style="{DynamicResource {dxet:ProgressBarEditThemeKey ResourceKey=PanelBackgroundHorizontalStyle}}" />
<ContentControl x:Name="left" Grid.Column="0" Style="{DynamicResource {dxet:ProgressBarEditThemeKey ResourceKey=PanelLeftSideHorizontalStyle}}" />
<ContentControl x:Name="right" Grid.Column="1" Style="{DynamicResource {dxet:ProgressBarEditThemeKey ResourceKey=PanelRightSideHorizontalStyle}}" />
<ContentControl x:Name="foreground" Grid.ColumnSpan="2" Style="{DynamicResource {dxet:ProgressBarEditThemeKey ResourceKey=PanelForegroundStyle}}" />
</Grid>
<ContentControl x:Name="PART_InnerContent" Grid.ColumnSpan="2" Style="{DynamicResource {dxet:ProgressBarEditThemeKey ResourceKey=ContentStyle}}" Content="{Binding Path=(dxe:BaseEdit.OwnerEdit).DisplayText}" ContentTemplate="{Binding Path=(dxe:BaseEdit.OwnerEdit).ContentTemplate}">
</ContentControl>
</Grid>
</ControlTemplate>
<Style x:Key="{dxet:ProgressBarEditThemeKey ResourceKey=ContentStyle}" TargetType="{x:Type ContentControl}">
<Setter Property="Focusable" Value="False" />
<Setter Property="VerticalAlignment" Value="{Binding Path=(dxe:BaseEdit.OwnerEdit).VerticalContentAlignment}" />
<Setter Property="HorizontalAlignment" Value="{Binding Path=(dxe:BaseEdit.OwnerEdit).HorizontalContentAlignment}" />
<Setter Property="Foreground" Value="#993333">
</Setter>
</Style>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<dxe:ProgressBarEdit Value="33"
Orientation="Horizontal"
Margin="102,37,96,0"
ContentDisplayMode="Content"/>
</Grid>
</dx:DXWindow>
Ссылка на источник: Can't change color of BAR in ProgessBarEdit
А также:
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Открываю в c# Excel, туда записываю данные в соответствующие строки и столбцы, необходимо по условию выделить строчку каким-то цветом, как это...
ошибка в этой строке SqlDataReader dr = sqlCommand1ExecuteReader(); остальной код программы