ZKuP/ZKuP/ManageAsp.xaml
Marcus dee300ade9 Arrows für Asp eingebaut
Aktualisierungsmöglichkeit und Export für Today für den Pförtner eingebaut
2025-12-04 10:20:51 +01:00

198 lines
13 KiB
XML

<mah:MetroWindow x:Class="ZKuP.ManageAsp"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
xmlns:local="clr-namespace:ZKuP"
mc:Ignorable="d"
Title="Ansprechpartner verwalten" Height="450" Width="1180"
WindowStartupLocation="CenterScreen" MinHeight="450" MinWidth="1180" ClipToBounds="False">
<Window.Resources>
<ResourceDictionary>
<Storyboard x:Key="ArrowBounceStoryboard" RepeatBehavior="5x">
<!-- Vertikales Hüpfen -->
<DoubleAnimationUsingKeyFrames
Storyboard.TargetName="arrowTel_Nr"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[1].(TranslateTransform.Y)">
<!-- Ausgangspunkt -->
<EasingDoubleKeyFrame KeyTime="0:0:0" Value="0"/>
<!-- Hoch (Start des Hops) -->
<EasingDoubleKeyFrame KeyTime="0:0:1.15" Value="-25">
<EasingDoubleKeyFrame.EasingFunction>
<CubicEase EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
<!-- Runter + leichter Aufprall -->
<EasingDoubleKeyFrame KeyTime="0:0:1.0" Value="0">
<EasingDoubleKeyFrame.EasingFunction>
<BounceEase Bounces="1" Bounciness="1.5" EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
</DoubleAnimationUsingKeyFrames>
<!-- Squeeze beim Aufprall: ScaleX + ScaleY -->
<DoubleAnimationUsingKeyFrames
Storyboard.TargetName="arrowTel_Nr"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1"/>
<!-- kurz beim Auftreffen etwas breiter -->
<EasingDoubleKeyFrame KeyTime="0:0:1.30" Value="1.08">
<EasingDoubleKeyFrame.EasingFunction>
<CubicEase EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
<EasingDoubleKeyFrame KeyTime="0:0:1.45" Value="1"/>
</DoubleAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames
Storyboard.TargetName="arrowTel_Nr"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)">
<DiscreteDoubleKeyFrame KeyTime="0:0:0" Value="1"/>
<!-- bei breiterem X leicht flacher -->
<EasingDoubleKeyFrame KeyTime="0:0:1.30" Value="0.92">
<EasingDoubleKeyFrame.EasingFunction>
<CubicEase EasingMode="EaseOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
<EasingDoubleKeyFrame KeyTime="0:0:1.45" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</ResourceDictionary>
</Window.Resources>
<Grid ClipToBounds="False">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="230"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<DataGrid x:Name="dgAsp" Grid.RowSpan="7" Grid.Column="1" Margin="90,10,7,52" ItemsSource="{Binding Path=., Mode=OneWay}" ToolTip="Einträge können mit Doppelklick auf die Zelle geändert werden" CanUserAddRows="False" AutoGenerateColumns="False" CanUserReorderColumns="False" PreviewKeyDown="DgAsp_PreviewKeyDown" CellEditEnding="DgAsp_CellEditEnding" BeginningEdit="DgAsp_BeginningEdit">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}" ClipboardContentBinding="{x:Null}" Header="Ansprechpartner" Width="*"/>
<DataGridTextColumn Binding="{Binding Vertreter}" ClipboardContentBinding="{x:Null}" Header="Asp-Vertreter" Width="*"/>
<DataGridTextColumn Binding="{Binding Vorgesetzter}" ClipboardContentBinding="{x:Null}" Header="Asp-Vorgesetzter" Width="*"/>
<DataGridTextColumn Binding="{Binding Tel_Nr}" ClipboardContentBinding="{x:Null}" Header="Asp-Tel" Width="*"/>
<DataGridTextColumn Binding="{Binding Tel_Vertreter}" ClipboardContentBinding="{x:Null}" Header="Vertreter-Tel" Width="*"/>
<DataGridTextColumn Binding="{Binding Tel_Vorgesetzter}" ClipboardContentBinding="{x:Null}" Header="Vorgesetzter-Tel" Width="*"/>
<DataGridTextColumn Binding="{Binding Raum}" ClipboardContentBinding="{x:Null}" Header="Raum/Werkstatt" Width="*" DisplayIndex="1">
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="HorizontalAlignment" Value="Center"/>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="3" Width="20" Height="20" Padding="0,2,0,0" ToolTip="Eintrag löschen" ToolTipService.ShowOnDisabled="True" FontFamily="Wingdings 2" FontSize="18" Click="DeleteButton_Click" Loaded="DelButton_Loaded"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
<Image x:Name="arrowName" Source="/Resources/arrow.png" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="120,-90,0,0" Visibility="Collapsed"/>
<Image x:Name="arrowRaum" Source="/Resources/arrow.png" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="230,-90,0,0" Visibility="Collapsed"/>
<Image x:Name="arrowVertreter" Source="/Resources/arrow.png" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="350,-90,0,0" Visibility="Collapsed"/>
<Image x:Name="arrowVorgesetzter" Source="/Resources/arrow.png" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="470,-90,0,0" Visibility="Collapsed"/>
<!--<Popup x:Name="ArrowPopup"
PlacementTarget="{Binding ElementName=RootGrid}"
Placement="Left"
AllowsTransparency="True"
StaysOpen="True"
IsOpen="True" HorizontalOffset="870" VerticalOffset="-90" ClipToBounds="False">
--><!-- per Code öffnen/schließen --><!--
<Border Background="Transparent">
<Image x:Name="arrowTel_Nr"
Source="/Resources/arrow.png"
Width="60" Height="200"
RenderTransformOrigin="0.5,0.5">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<TranslateTransform/>
</TransformGroup>
</Image.RenderTransform>
</Image>
</Border>
</Popup>-->
<Image x:Name="arrowTel_Nr" Source="/Resources/arrow.png" Visibility="Visible" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="590,-90,0,0" >
<!--<Image.RenderTransform>
<TransformGroup>
0 = Scale, 1 = Translate, 2 = Rotate
<ScaleTransform ScaleX="1" ScaleY="1"/>
<TranslateTransform X="0" Y="0"/>
<RotateTransform Angle="0"/>
</TransformGroup>
</Image.RenderTransform>-->
</Image>
<Image x:Name="arrowTel_Vertreter" Source="/Resources/arrow.png" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="700,-90,0,0" Visibility="Collapsed"/>
<Image x:Name="arrowTel_Vorgesetzter" Source="/Resources/arrow.png" Grid.Column="1" Width="50" HorizontalAlignment="Left" Margin="820,-90,0,0" Visibility="Collapsed"/>
<StackPanel Grid.Row="0" Margin="0,10,0,0">
<TextBlock HorizontalAlignment="Left" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Grid.Row="0" Margin="10,0,0,0" TextWrapping="Wrap" Text="Ansprechpartner:" VerticalAlignment="Top" Width="110"/>
<TextBox x:Name="tbAsp" Grid.Row="0" HorizontalAlignment="Left" Height="25" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" Padding="0,2,0,0" TabIndex="1"/>
</StackPanel>
<StackPanel Grid.Row="1">
<TextBlock HorizontalAlignment="Left" Grid.Row="1" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Margin="10,0,0,0" TextWrapping="Wrap" Text="Raum/Werkstatt:" VerticalAlignment="Top" Width="155"/>
<TextBox x:Name="tbRaum" Grid.Row="1" HorizontalAlignment="Left" Height="25" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" Padding="0,2,0,0" TabIndex="2"/>
</StackPanel>
<StackPanel Grid.Row="2">
<TextBlock HorizontalAlignment="Left" Grid.Row="2" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Margin="10,0,0,0" TextWrapping="Wrap" Text="Ansprechpartner-Vertreter:" VerticalAlignment="Top" Width="155"/>
<TextBox x:Name="tbAspVertreter" Grid.Row="2" HorizontalAlignment="Left" Height="25" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" Padding="0,2,0,0" TabIndex="3"/>
</StackPanel>
<StackPanel Grid.Row="3">
<TextBlock HorizontalAlignment="Left" Grid.Row="3" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Margin="10,0,0,0" TextWrapping="Wrap" Text="Ansprechpartner-Vorgesetzter:" VerticalAlignment="Top" Width="175"/>
<TextBox x:Name="tbAspVorgesetzter" Grid.Row="3" HorizontalAlignment="Left" Height="25" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" Padding="0,2,0,0" TabIndex="4"/>
</StackPanel>
<StackPanel Grid.Row="4">
<TextBlock HorizontalAlignment="Left" Grid.Row="4" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Margin="10,0,0,0" TextWrapping="Wrap" Text="Ansprechpartner-TelNr:" VerticalAlignment="Top" Width="155"/>
<TextBox x:Name="tbAspTel" HorizontalAlignment="Left" Grid.Row="4" Height="23" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" TabIndex="5"/>
</StackPanel>
<StackPanel Grid.Row="5">
<TextBlock HorizontalAlignment="Left" Grid.Row="5" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Margin="10,0,0,0" TextWrapping="Wrap" Text="Vertreter-TelNr:" VerticalAlignment="Top" Width="175"/>
<TextBox x:Name="tbVertreterTel" Grid.Row="5" HorizontalAlignment="Left" Height="25" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" Padding="0,2,0,0" TabIndex="6"/>
</StackPanel>
<StackPanel Grid.Row="6">
<TextBlock HorizontalAlignment="Left" Grid.Row="6" Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="155"><Run Text="Vorgesetzter"/><Run Text="-TelNr:"/></TextBlock>
<TextBox x:Name="tbVorgesetzterTel" Grid.Row="6" HorizontalAlignment="Left" Height="23" Margin="10,0,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="215" TabIndex="7"/>
</StackPanel>
<Button x:Name="btnCreateAsp" Margin="10,10,0,10" Grid.RowSpan="7" FontSize="12" Padding="-2" Grid.Column="1" Content="Hinzufügen&#xD;&#xA; →" Click="BtnCreateAsp_Click" HorizontalAlignment="Left" VerticalAlignment="Stretch" Width="70" TabIndex="8"/>
<Button x:Name="btnClose" Grid.Column="1" Grid.Row="7" Content="Schließen" Margin="0,0,10,10" TabIndex="8" Width="98" Height="28" HorizontalAlignment="Right" VerticalAlignment="Bottom" Click="BtnClose_Click"/>
</Grid>
</mah:MetroWindow>