This commit is contained in:
Rene Schwarz
2021-04-19 06:35:17 +02:00
parent e220c09ec3
commit 981ad26b1b
59 changed files with 1198 additions and 273 deletions

View File

@@ -0,0 +1,93 @@
<UserControl x:Class="Server_Dashboard.Controls.DoubleRoundProgressBar.DoubleRoundProgressBar"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:Server_Dashboard.Controls.DoubleRoundProgressBar"
xmlns:ed="http://schemas.microsoft.com/expression/2010/drawing"
xmlns:root="clr-namespace:Server_Dashboard"
mc:Ignorable="d"
x:Name="_this"
d:DesignHeight="50" d:DesignWidth="50">
<UserControl.Resources>
<root:ValueToAngleConverter x:Key="valueToAngle"/>
</UserControl.Resources>
<Grid>
<Ellipse
x:Name="Background"
Fill="{Binding
ElementName=_this,
Path=BackgroundBrush
}"
Margin="0"
Stroke="{Binding
ElementName=_this,
Path=BackgroundBrush
}"
/>
<ed:Arc
ArcThickness="8"
ArcThicknessUnit="Pixel"
EndAngle="{Binding
Converter={StaticResource valueToAngle},
ElementName=_this,
Path=ValueRead
}"
Fill="{Binding
ElementName=_this,
Path=ReadIndicatorBrush
}"
Stretch="None"
StartAngle="0"
/>
<Ellipse
x:Name="Seperator"
Fill="Transparent"
Margin="7"
Stroke="{Binding
ElementName=_this,
Path=ProgressBorderBrush
}"
Panel.ZIndex="1"
/>
<Ellipse
x:Name="Seperator2"
Fill="Transparent"
Margin="8"
Stroke="{Binding
ElementName=_this,
Path=ProgressBorderBrush
}"
Panel.ZIndex="1"
/>
<ed:Arc
Margin="8"
ArcThickness="8"
ArcThicknessUnit="Pixel"
EndAngle="{Binding
Converter={StaticResource valueToAngle},
ElementName=_this,
Path=ValueWrite
}"
Fill="{Binding
ElementName=_this,
Path=WriteIndicatorBrush
}"
Stretch="None"
StartAngle="0"
/>
<Ellipse
x:Name="Border"
Fill="{Binding
ElementName=_this,
Path=ProgressBorderBrush
}"
Margin="16"
Stroke="{Binding
ElementName=_this,
Path=ProgressBorderBrush
}"
/>
</Grid>
</UserControl>

View File

@@ -0,0 +1,60 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace Server_Dashboard.Controls.DoubleRoundProgressBar {
/// <summary>
/// Interaktionslogik für HalfRoundProgressBar.xaml
/// </summary>
public partial class DoubleRoundProgressBar : UserControl {
public static DependencyProperty ReadIndicatorBrushProperty = DependencyProperty.Register("ReadIndicatorBrush", typeof(Brush), typeof(DoubleRoundProgressBar));
public Brush ReadIndicatorBrush {
get { return (Brush)GetValue(ReadIndicatorBrushProperty); }
set { SetValue(ReadIndicatorBrushProperty, value); }
}
public static DependencyProperty WriteIndicatorBrushProperty = DependencyProperty.Register("WriteIndicatorBrush", typeof(Brush), typeof(DoubleRoundProgressBar));
public Brush WriteIndicatorBrush {
get { return (Brush)GetValue(WriteIndicatorBrushProperty); }
set { SetValue(WriteIndicatorBrushProperty, value); }
}
public static DependencyProperty BackgroundBrushProperty = DependencyProperty.Register("BackgroundBrush", typeof(Brush), typeof(DoubleRoundProgressBar));
public Brush BackgroundBrush {
get { return (Brush)GetValue(BackgroundBrushProperty); }
set { SetValue(BackgroundBrushProperty, value); }
}
public static DependencyProperty ProgressBorderBrushProperty = DependencyProperty.Register("ProgressBorderBrush", typeof(Brush), typeof(DoubleRoundProgressBar));
public Brush ProgressBorderBrush {
get { return (Brush)GetValue(ProgressBorderBrushProperty); }
set { SetValue(ProgressBorderBrushProperty, value); }
}
public static DependencyProperty ValueWriteProperty = DependencyProperty.Register("ValueWrite", typeof(int), typeof(DoubleRoundProgressBar));
public int ValueWrite {
get { return (int)GetValue(ValueWriteProperty); }
set { SetValue(ValueWriteProperty, value); }
}
public static DependencyProperty ValueReadProperty = DependencyProperty.Register("ValueRead", typeof(int), typeof(DoubleRoundProgressBar));
public int ValueRead {
get { return (int)GetValue(ValueReadProperty); }
set { SetValue(ValueReadProperty, value); }
}
public DoubleRoundProgressBar() {
InitializeComponent();
}
}
}