Suggest Mediacabinet View

This commit is contained in:
2026-03-10 22:05:18 +01:00
parent d2ba4baa1d
commit 57b8791dc0
5 changed files with 155 additions and 66 deletions

View File

@@ -16,21 +16,22 @@
<d:DesignerProperties.DesignStyle>
<Style TargetType="UserControl">
<!-- Property="Background" Value="White" /> -->
<Setter Property="Height" Value="300" />
<Setter Property="Height" Value="Auto" />
<Setter Property="Width" Value="Auto"></Setter>
</Style>
</d:DesignerProperties.DesignStyle>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="25*"/>
<ColumnDefinition Width="25*"/>
<ColumnDefinition Width="50*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="70"/>
<RowDefinition Height="100"/>
<RowDefinition Height="100"/>
<RowDefinition Height="180"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Border Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" BorderBrush="White" BorderThickness="2"/>
<!-- <Label Grid.Column="0" Content="{Binding SName}" VerticalAlignment="Center" HorizontalAlignment="Left"/> -->
@@ -43,7 +44,7 @@
</Grid.RowDefinitions>
<Border Grid.Row="0" BorderBrush="White" BorderThickness="1" />
<Border Grid.Row="1" BorderBrush="White" BorderThickness="1" />
<Label Grid.Row="0" VerticalAlignment="Center" Content="Übervoll" HorizontalContentAlignment="Center" HorizontalAlignment="Center" Width="200" FontSize="30"/>
<Label Grid.Row="0" VerticalAlignment="Center" Content="Übervoll" HorizontalContentAlignment="Center" HorizontalAlignment="Center" FontSize="30"/>
<RadioButton Margin="5" Grid.Row="1" IsChecked="{Binding Overload}" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="False"/>
</Grid>
@@ -71,13 +72,11 @@
<Border Grid.Column="1" Grid.Row="1" BorderBrush="White" BorderThickness="1"/>
<Grid Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<HMIToolkit:BinaryValveControl Grid.Row="2" Grid.Column="0" DataContext="{Binding FillValveControlVm}"/>
<HMIToolkit:BinaryValveControl Grid.Row="2" Grid.Column="1" DataContext="{Binding DrainValveControlVm}"/>
<HMIToolkit:BinaryValveControl Grid.Row="2" Grid.Column="2" DataContext="{Binding PumpValveControlVm}"/>
<Button x:Name="btnOpen"
<!--<Button x:Name="btnOpen"
Grid.Column="0"
DataContext="{Binding EmptyButton}"
Command="{Binding ButtonClickedCommand}"
@@ -85,9 +84,9 @@
Background="{Binding IFeedback, Converter={StaticResource feedbackConverter}}"
Content="Leeren"
Height="100"
FontSize="30"/>
FontSize="30"/>-->
<Button x:Name="btnFill"
<!--<Button x:Name="btnFill"
Grid.Column="1"
DataContext="{Binding FillButton}"
Command="{Binding ButtonClickedCommand}"
@@ -95,7 +94,7 @@
Background="{Binding IFeedback, Converter={StaticResource feedbackConverter}}"
Content="Füllen"
Height="100"
FontSize="30"/>
</Grid>
FontSize="30"/>-->
</Grid>
</UserControl>

View File

@@ -19,18 +19,23 @@ public sealed partial class MediaContainerVm : ObservableValidator, IDisposable
[ObservableProperty] private bool full = false;
[ObservableProperty] private bool overload = false;
[ObservableProperty] private BinaryValveControlVM? fillValveControlVm;
[ObservableProperty] private HMIControlButtonVM? emptyButton;
[ObservableProperty] private HMIControlButtonVM? fillButton;
[ObservableProperty] private BinaryValveControlVM? drainValveControlVm;
[ObservableProperty] private BinaryValveControlVM? pumpValveControlVm;
public MediaContainerVm()
{
sName = "No Name";
EmptyButton = new HMIControlButtonVM();
FillButton = new HMIControlButtonVM();
FillValveControlVm = new();
DrainValveControlVm = new();
PumpValveControlVm = new();
}
@@ -41,8 +46,10 @@ public sealed partial class MediaContainerVm : ObservableValidator, IDisposable
sName = "No Name";
EmptyButton = new HMIControlButtonVM(_adsManager, _variableName + ".stEmptyButton");
FillButton = new HMIControlButtonVM(_adsManager, _variableName + ".stFillButton");
FillValveControlVm = new BinaryValveControlVM(_adsManager, _variableName + ".stFillingValve");
DrainValveControlVm = new BinaryValveControlVM(_adsManager, _variableName + ".stDrainValve");
PumpValveControlVm = new BinaryValveControlVM(_adsManager, _variableName + ".stPumpValve");
_adsManager.Register(_variableName + ".xEmpty", EmptyChanged);
_adsManager.Register(_variableName + ".xFull", FullChanged);
_adsManager.Register(_variableName + ".xOverload", OverloadChanged);
@@ -62,12 +69,16 @@ public sealed partial class MediaContainerVm : ObservableValidator, IDisposable
}
public void Dispose()
{
EmptyButton?.Dispose();
EmptyButton = null;
FillButton?.Dispose();
FillButton = null;
FillValveControlVm?.Dispose();
DrainValveControlVm?.Dispose();
PumpValveControlVm?.Dispose();
_adsManager?.Deregister(_variableName + ".xEmpty", EmptyChanged);
FillValveControlVm = null;
DrainValveControlVm = null;
PumpValveControlVm = null;
_adsManager?.Deregister(_variableName + ".xEmpty", EmptyChanged);
_adsManager?.Deregister(_variableName + ".xFull", FullChanged);
_adsManager?.Deregister(_variableName + ".xOverload", OverloadChanged);
}