270 lines
18 KiB
XML
270 lines
18 KiB
XML
<localView:BeWoView x:Class="BeWo.View.EmployeeArbeitszeitView"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:localView="clr-namespace:BeWo.View"
|
|
xmlns:localViewModel="clr-namespace:BeWo.ViewModel"
|
|
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
|
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
|
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
|
|
xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
|
|
xmlns:controls="clr-namespace:BeWo.View.Controls"
|
|
xmlns:validation="clr-namespace:BeWo.Validation"
|
|
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
|
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
|
xmlns:sys="clr-namespace:System;assembly=mscorlib"
|
|
xmlns:shared="clr-namespace:BS.Shared;assembly=BS.Shared"
|
|
VerticalAlignment="Stretch" Focusable="True">
|
|
<localView:BeWoView.Resources>
|
|
<Style x:Key="bargeldkassenListBoxItemStyle" TargetType="{x:Type ListBoxItem}">
|
|
<Setter Property="Background" Value="#00FFFFFF" />
|
|
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type ItemsControl}}}" />
|
|
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type ItemsControl}}}" />
|
|
<Setter Property="Padding" Value="2,0,0,0" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type ListBoxItem}">
|
|
<Border x:Name="Bd" SnapsToDevicePixels="True" Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
|
|
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
|
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
|
|
Content="{TemplateBinding Content}"
|
|
ContentStringFormat="{TemplateBinding ContentStringFormat}"
|
|
ContentTemplate="{TemplateBinding ContentTemplate}" />
|
|
</Border>
|
|
<ControlTemplate.Triggers>
|
|
<Trigger Property="IsEnabled" Value="False">
|
|
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
|
|
</Trigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<ObjectDataProvider MethodName="GetValues"
|
|
ObjectType="{x:Type sys:Enum}"
|
|
x:Key="AppointmentDayOfWeeks">
|
|
<ObjectDataProvider.MethodParameters>
|
|
<x:Type TypeName="shared:AppointmentDayOfWeek" />
|
|
</ObjectDataProvider.MethodParameters>
|
|
</ObjectDataProvider>
|
|
</localView:BeWoView.Resources>
|
|
|
|
|
|
|
|
<Grid>
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<GroupBox Grid.ColumnSpan="2" Padding="5" Style="{StaticResource ObjectEditGroupBox}" Header="Arbeitszeiten">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
<StackPanel Orientation="Vertical" Grid.RowSpan="2">
|
|
<Button Content="Neue Arbeitszeitplanung hinzufügen" Margin="3" HorizontalAlignment="Left" IsEnabled="True" Click="ButtonOpenAndAddArbeitszeitClick" />
|
|
|
|
|
|
<TabControl x:Name="tabcontrol_Arbeitszeit" Margin="5" ItemsSource="{Binding Arbeitszeiten.VMList}">
|
|
|
|
<TabControl.ItemTemplate>
|
|
|
|
<DataTemplate>
|
|
<StackPanel Orientation="Horizontal">
|
|
<Label Content="{Binding ArbeitszeitString}" />
|
|
|
|
|
|
<Button
|
|
VerticalAlignment="Center" Height="20" Visibility="{Binding IsSelected, RelativeSource={RelativeSource AncestorType={x:Type TabItem}}, Converter={StaticResource BoolVisibilityConverter}}"
|
|
Click="btn_deleteArbeitszeit_Click" Name="btn_deleteContract"
|
|
ToolTip="Arbeitszeitplanung löschen"
|
|
Style="{DynamicResource CloseButtonStyle}" Margin="0" />
|
|
|
|
</StackPanel>
|
|
</DataTemplate>
|
|
</TabControl.ItemTemplate>
|
|
<TabControl.ContentTemplate>
|
|
<DataTemplate>
|
|
|
|
<ScrollViewer HorizontalScrollBarVisibility="Auto"
|
|
VerticalScrollBarVisibility="Auto">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="*"/>
|
|
</Grid.RowDefinitions>
|
|
|
|
|
|
<GroupBox Margin="5" Style="{DynamicResource ObjectEditGroupBox}">
|
|
|
|
<GroupBox.Header>
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="23" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
<TextBlock Text="Details" Margin="0 1" Grid.Row="1" Name="Details"
|
|
VerticalAlignment="Bottom"
|
|
TextElement.FontSize="16"
|
|
TextElement.Foreground="{StaticResource TabItemHotTextBrush}"
|
|
TextElement.FontFamily="Microsoft Sans Serif"
|
|
/>
|
|
|
|
<Grid Margin="0" Grid.Row="0" Grid.ColumnSpan="2">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<Label Grid.Column="0" Grid.Row="0" Margin="0,3,3,3" VerticalAlignment="Center" >Gültig von</Label>
|
|
<Label Grid.Column="2" Grid.Row="0" Margin="3" VerticalAlignment="Center">Gültig bis</Label>
|
|
|
|
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" AllowNullInput="True" Grid.Column="1" Grid.Row="0" Margin="3" Width="125" Height="23" EditValue="{Binding Path=GueltigVon, UpdateSourceTrigger=PropertyChanged}"/>
|
|
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" AllowNullInput="True" Grid.Column="3" Grid.Row="0" Margin="3" Width="125" Height="23" EditValue="{Binding Path=GueltigBis, UpdateSourceTrigger=PropertyChanged}"/>
|
|
|
|
|
|
|
|
<Button Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Content="Neuen Arbeitstag hinzufügen" HorizontalAlignment="Left" Click="AddArbeitszeitToView_Click" Height="23" Margin="0,10,0,0"/>
|
|
|
|
<controls:PopupNonTopmost Name="popup_newArbeitszeitEintrag" Placement="MousePoint" >
|
|
<Border Background="White" Padding="3" BorderThickness="1" BorderBrush="Gray">
|
|
<GroupBox Name="groupbox_newArbeistzeit" Header="Neuen Eintrag hinzufügen" Style="{DynamicResource ObjectEditGroupBox}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
|
|
|
|
<Label Grid.Column="0" Grid.Row="0" Margin="3" VerticalAlignment="Center">Tag</Label>
|
|
<Label Grid.Column="0" Grid.Row="1" Margin="3" VerticalAlignment="Center">Uhrzeit von</Label>
|
|
<Label Grid.Column="0" Grid.Row="2" Margin="3" VerticalAlignment="Center">Uhrzeit bis</Label>
|
|
<Label Grid.Column="0" Grid.Row="3" Margin="3" VerticalAlignment="Top">Bemerkungen</Label>
|
|
|
|
|
|
<dxe:ComboBoxEdit Grid.Column="1" Grid.Row="0" VerticalContentAlignment="Center" Margin="3" Height="23" ItemsSource="{Binding Source={StaticResource AppointmentDayOfWeeks}}"
|
|
EditValue="{validation:ValidationBinding Path=ArbeitszeitEintraege.NewVM.Tag, UpdateSourceTrigger=PropertyChanged}"
|
|
Name="Tag" IsTextEditable="False"/>
|
|
|
|
<dxe:TextEdit Grid.Column="1" Grid.Row="1" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True" Name="UhrzeitVon"
|
|
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor"
|
|
EditValue="{validation:ValidationBinding Path=ArbeitszeitEintraege.NewVM.UhrzeitVon, UpdateSourceTrigger=PropertyChanged}"
|
|
Height="23"
|
|
Margin="3,3,3,3"/>
|
|
|
|
<dxe:TextEdit Grid.Column="1" Grid.Row="2" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True" Name="UhrzeitBis"
|
|
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor"
|
|
EditValue="{validation:ValidationBinding Path=ArbeitszeitEintraege.NewVM.UhrzeitBis, UpdateSourceTrigger=PropertyChanged}"
|
|
Height="23"
|
|
Margin="3,3,3,3"/>
|
|
|
|
<dxe:TextEdit Grid.Column="1" Grid.Row="3" Grid.RowSpan="2" Name="Notiz" Margin="3,3,3,3" TextWrapping="Wrap" AcceptsReturn="True" Width="250" Height="125" VerticalContentAlignment="Top" VerticalScrollBarVisibility="Auto"
|
|
EditValue="{validation:ValidationBinding Path=ArbeitszeitEintraege.NewVM.Notice, UpdateSourceTrigger=PropertyChanged}"/>
|
|
|
|
|
|
<StackPanel Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="5" Orientation="Horizontal" HorizontalAlignment="Right">
|
|
<Button Click="PopupNewArbeitszeit_Click" Content="Hinzufügen" Height="25"
|
|
FontWeight="Normal" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Right" />
|
|
<Button HorizontalAlignment="Right" VerticalAlignment="Center" Height="25"
|
|
Margin="3" Content="Abbrechen" Click="PopupArbeitszeitClose_Click" />
|
|
</StackPanel>
|
|
|
|
</Grid>
|
|
</GroupBox>
|
|
</Border>
|
|
</controls:PopupNonTopmost>
|
|
|
|
</Grid>
|
|
|
|
</Grid>
|
|
</GroupBox.Header>
|
|
|
|
<dxg:GridControl Name="grid_Arbeitszeiten" Tag="{Binding}" MaxWidth="{Binding ElementName=BlubbTest, Path=ActualWidth}" DataSource="{Binding Path=ArbeitszeitEintraege.VMList, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" >
|
|
<dxg:GridControl.Columns>
|
|
|
|
<dxg:GridColumn FieldName="x" Header="" Width="25" FixedWidth="True" >
|
|
<dxg:GridColumn.CellTemplate>
|
|
<DataTemplate>
|
|
<Button Content="r" FontFamily="Webdings" Click="RemoveArbeitszeit_OnClick" Width="18" Height="18" VerticalAlignment="Center" />
|
|
</DataTemplate>
|
|
</dxg:GridColumn.CellTemplate>
|
|
</dxg:GridColumn>
|
|
|
|
<dxg:GridColumn Header="Tag" FixedWidth="True" Width="100" FieldName="Tag" SortOrder="Ascending">
|
|
<dxg:GridColumn.EditSettings>
|
|
<dxe:ComboBoxEditSettings ItemsSource="{Binding Source={StaticResource AppointmentDayOfWeeks}}" />
|
|
</dxg:GridColumn.EditSettings>
|
|
</dxg:GridColumn>
|
|
|
|
<dxg:GridColumn Header="Uhrzeit von" FixedWidth="True" Width="250" FieldName="UhrzeitVon" >
|
|
<dxg:GridColumn.EditSettings>
|
|
<dxe:TextEditSettings MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" MaskShowPlaceHolders="True" MaskUseAsDisplayFormat="True"/>
|
|
</dxg:GridColumn.EditSettings>
|
|
</dxg:GridColumn>
|
|
|
|
<dxg:GridColumn Header="Uhrzeit bis" FixedWidth="True" Width="250" FieldName="UhrzeitBis">
|
|
<dxg:GridColumn.EditSettings>
|
|
<dxe:TextEditSettings MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" MaskShowPlaceHolders="True" MaskUseAsDisplayFormat="True"/>
|
|
</dxg:GridColumn.EditSettings>
|
|
</dxg:GridColumn>
|
|
|
|
<dxg:GridColumn Header="Bemerkungen" FixedWidth="True" Width="500" FieldName="Notice"/>
|
|
|
|
</dxg:GridControl.Columns>
|
|
<dxg:GridControl.View>
|
|
<dxg:TableView NavigationStyle="Cell" Margin="2,2,2,2" AutoWidth="True" ShowGroupPanel="False" ShowGroupedColumns="False" ShowTotalSummary="False" HorizontalContentAlignment="Left"/>
|
|
</dxg:GridControl.View>
|
|
</dxg:GridControl>
|
|
|
|
</GroupBox>
|
|
</Grid>
|
|
</ScrollViewer>
|
|
</DataTemplate>
|
|
</TabControl.ContentTemplate>
|
|
</TabControl>
|
|
</StackPanel>
|
|
</Grid>
|
|
</GroupBox>
|
|
</Grid>
|
|
</Grid>
|
|
|
|
</localView:BeWoView> |