Files
BeWoPlaner/BeWo/Scheduler/View/SchedulerAppointmentEditForm.xaml
2025-04-15 16:48:33 +02:00

1243 lines
60 KiB
XML

<localSchView:AbstractAppointmentEditForm
x:Class="BeWo.Scheduler.View.SchedulerAppointmentEditForm"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:bewoConverter="clr-namespace:BeWo.Converter"
xmlns:converter="clr-namespace:BeWo.Scheduler.Converter"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduler"
xmlns:dxschint="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
xmlns:localSchView="clr-namespace:BeWo.Scheduler.View"
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:search="clr-namespace:BeWo.View.Search"
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
Width="420"
d:DesignHeight="300"
d:DesignWidth="300"
mc:Ignorable="d">
<localSchView:AbstractAppointmentEditForm.Resources>
<dxschint:TimeSpanToDateTimeConverter x:Key="TimeSpanToDateTimeConverter" />
<converter:Recurrence2GermanConverter x:Key="Recurrence2GermanConverter" />
<localSchView:TextFromIDataContractConverter x:Key="TextFromIDataContractConverter" />
<converter:NewCalendarBackgroundConverter x:Key="NewCalendarBackgroundConverter" />
<bewoConverter:BoolVisibilityConverter x:Key="BoolVisibilityConverter" />
<bewoConverter:ParticipationBrushConverter x:Key="ParticipationBrushConverter" />
<localSchView:RemoveElementVisibilityConverter x:Key="RemoveElementVisibilityConverter" />
<localSchView:InformationVisibilityConverter x:Key="InformationVisibilityConverter" />
<Style x:Key="MultiSupportConceptSelectionControlStyle" TargetType="{x:Type ListBoxItem}">
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
<Setter Property="Margin" Value="2,2,2,0" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<Border
x:Name="ItemBorder"
MinHeight="25"
Background="#FF000000"
CornerRadius="5">
<Border.OpacityMask>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#19000000" />
<GradientStop Offset="1" Color="#26000000" />
</LinearGradientBrush>
</Border.OpacityMask>
</Border>
<Border
x:Name="ItemContent"
MinHeight="25"
Background="{StaticResource SupportConceptContentBrush}"
CornerRadius="5">
<Grid
Margin="5,3,5,3"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
OpacityMask="{x:Null}"
SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBlock
x:Name="txtDetail1"
Grid.Row="0"
Grid.Column="0"
FontFamily="Microsoft Sans Serif"
FontSize="12"
Foreground="#FFD2D2D2"
Text="{Binding Path=CustomerName}" />
<TextBlock
x:Name="txtDetail2"
Grid.Row="1"
Grid.Column="0"
FontFamily="Microsoft Sans Serif"
FontSize="10"
Foreground="{Binding ForegroundBrush}"
Text="{Binding Path=FirstCostBearerDetailString}"
ToolTip="{Binding Path=FirstCostBearerDetailString}" />
<Button
x:Name="btnRemoveSupportConcept"
Grid.Row="0"
Grid.RowSpan="2"
Grid.Column="1"
Width="20"
Height="20"
Margin="3,0,0,0"
Click="BtnRemoveSupportConcept_Click"
Style="{DynamicResource CloseButtonStyle}"
Tag="{Binding}"
ToolTip="Hilfeplan aus der Liste entfernen" />
</Grid>
</Border>
</Grid>
<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding Path=IsArchived}" Value="True">
<Setter TargetName="txtDetail1" Property="Foreground" Value="#FF808080" />
<Setter TargetName="txtDetail2" Property="Foreground" Value="#FF808080" />
</DataTrigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#33000000" />
<GradientStop Offset="1" Color="#66000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="ListBoxItem.IsSelected" Value="True">
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#99000000" />
<GradientStop Offset="1" Color="#CC000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="ListBoxItem.IsSelected" Value="True" />
<Condition Property="Selector.IsSelectionActive" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#99000000" />
<GradientStop Offset="1" Color="#B2000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="MultiElementSelectionControlStyle" TargetType="{x:Type ListBoxItem}">
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
<Setter Property="Margin" Value="3,1,3,1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<Border
MinHeight="20"
Background="{Binding Converter={StaticResource NewCalendarBackgroundConverter}}"
CornerRadius="5" />
<Border
x:Name="ItemBorder"
MinHeight="20"
Background="#FF000000"
CornerRadius="5">
<Border.OpacityMask>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#19000000" />
<GradientStop Offset="1" Color="#26000000" />
</LinearGradientBrush>
</Border.OpacityMask>
</Border>
<Border
x:Name="ItemContent"
MinHeight="20"
CornerRadius="5">
<Grid
Margin="5,3,5,3"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
OpacityMask="{x:Null}"
SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Border
Grid.Column="0"
Width="5"
Height="15"
Background="{Binding Converter={StaticResource ParticipationBrushConverter}}"
BorderBrush="{Binding Converter={StaticResource ParticipationBrushConverter}, ConverterParameter=Border}"
BorderThickness="1"
CornerRadius="2" />
<TextBlock
Grid.Column="1"
Margin="3,0,0,0"
VerticalAlignment="Center"
FontFamily="Microsoft Sans Serif"
FontSize="12"
Foreground="#FFD2D2D2"
Text="{Binding Converter={StaticResource TextFromIDataContractConverter}}" />
<Button
x:Name="btnInformation"
Grid.RowSpan="2"
Grid.Column="2"
Width="15"
Height="15"
Margin="3,0,0,0"
Click="btnInformation_Click"
Content="i"
Tag="{Binding}"
ToolTip="Informationen zur Auslastung anzeigen"
Visibility="{Binding Converter={StaticResource InformationVisibilityConverter}}" />
<Button
x:Name="btnRemoveElement"
Grid.RowSpan="2"
Grid.Column="3"
Width="15"
Height="15"
Margin="3,0,0,0"
Click="BtnRemoveElement_Click"
Style="{DynamicResource CloseButtonStyleSmall}"
Tag="{Binding}"
ToolTip="Element aus der Liste entfernen"
Visibility="{Binding Converter={StaticResource RemoveElementVisibilityConverter}}" />
</Grid>
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#33000000" />
<GradientStop Offset="1" Color="#66000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="ListBoxItem.IsSelected" Value="True">
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#99000000" />
<GradientStop Offset="1" Color="#CC000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="ListBoxItem.IsSelected" Value="True" />
<Condition Property="Selector.IsSelectionActive" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#99000000" />
<GradientStop Offset="1" Color="#B2000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="MultiResourceSelectionControlStyle" TargetType="{x:Type ListBoxItem}">
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
<Setter Property="Margin" Value="3,1,3,1" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<Border
MinHeight="20"
Background="{Binding Converter={StaticResource NewCalendarBackgroundConverter}}"
CornerRadius="5" />
<Border
x:Name="ItemBorder"
MinHeight="20"
Background="#FF000000"
CornerRadius="5">
<Border.OpacityMask>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#19000000" />
<GradientStop Offset="1" Color="#26000000" />
</LinearGradientBrush>
</Border.OpacityMask>
</Border>
<Border
x:Name="ItemContent"
MinHeight="20"
CornerRadius="5">
<Grid
Margin="5,3,5,3"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
OpacityMask="{x:Null}"
SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Border
Grid.Column="0"
Width="5"
Height="15"
Background="{Binding Converter={StaticResource ParticipationBrushConverter}}"
BorderBrush="{Binding Converter={StaticResource ParticipationBrushConverter}, ConverterParameter=Border}"
BorderThickness="1"
CornerRadius="2" />
<Rectangle
Grid.Column="1"
Width="10"
Height="10"
VerticalAlignment="Center"
Fill="{Binding Path=Color, Converter={StaticResource StringBrushConverter}}"
Stroke="Black"
StrokeThickness="1" />
<TextBlock
Grid.Column="2"
Margin="3,0,0,0"
VerticalAlignment="Center"
FontFamily="Microsoft Sans Serif"
FontSize="12"
Foreground="#FFD2D2D2"
Text="{Binding Converter={StaticResource TextFromIDataContractConverter}}" />
<Button
x:Name="btnRemoveElement"
Grid.RowSpan="2"
Grid.Column="3"
Width="15"
Height="15"
Margin="3,0,0,0"
Click="BtnRemoveElement_Click"
Style="{DynamicResource CloseButtonStyleSmall}"
Tag="{Binding}"
ToolTip="Element aus der Liste entfernen"
Visibility="{Binding Converter={StaticResource RemoveElementVisibilityConverter}}" />
</Grid>
</Border>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#33000000" />
<GradientStop Offset="1" Color="#66000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="ListBoxItem.IsSelected" Value="True">
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#99000000" />
<GradientStop Offset="1" Color="#CC000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="ListBoxItem.IsSelected" Value="True" />
<Condition Property="Selector.IsSelectionActive" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="ItemBorder" Property="OpacityMask">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#99000000" />
<GradientStop Offset="1" Color="#B2000000" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</localSchView:AbstractAppointmentEditForm.Resources>
<Grid x:Name="FormContainer">
<Grid HorizontalAlignment="Stretch" Background="#0C000000">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<!-- 0 -->
<RowDefinition Height="Auto" />
<!-- 1 -->
<RowDefinition Height="Auto" />
<!-- 2 -->
<RowDefinition Height="Auto" />
<!-- 3 -->
<RowDefinition Height="Auto" />
<!-- 4 -->
<RowDefinition Height="Auto" />
<!-- 5 -->
<RowDefinition Height="Auto" />
<!-- 6 -->
<RowDefinition Height="Auto" />
<!-- 7 -->
<RowDefinition Height="Auto" />
<!-- 8 -->
<RowDefinition Height="Auto" />
<!-- 9 -->
<RowDefinition Height="Auto" />
<!-- 10 -->
<RowDefinition Height="Auto" />
<!-- 11 -->
<RowDefinition Height="Auto" />
<!-- 12 -->
<RowDefinition Height="*" />
<!-- 13 -->
<RowDefinition Height="Auto" />
<!-- 14 -->
<RowDefinition Height="*" />
<!-- 15 -->
<RowDefinition Height="Auto" />
<!-- 16 -->
<RowDefinition Height="Auto" />
<!-- 17 -->
<RowDefinition Height="Auto" />
<!-- 18 -->
<RowDefinition Height="Auto" />
<!-- 19 -->
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<!-- Region Betreff -->
<Label
x:Name="BetreffLabel"
Grid.Row="0"
Grid.Column="0"
Content="Betreff" />
<dxe:TextEdit
x:Name="BetreffEditText"
Grid.Row="0"
Grid.Column="1"
Grid.ColumnSpan="4"
Height="23"
Margin="3"
EditValue="{Binding Controller.Subject}" />
<!-- Endregion -->
<!-- Region Ort -->
<Label
x:Name="OrtLabel"
Grid.Row="1"
Grid.Column="0"
Content="Ort" />
<dxe:TextEdit
x:Name="Ort"
Grid.Row="1"
Grid.Column="1"
Grid.ColumnSpan="4"
Height="23"
Margin="3"
EditValue="{Binding Controller.Location}" />
<!-- Endregion -->
<!-- Region Start -->
<Label
x:Name="StartLabel"
Grid.Row="2"
Grid.Column="0"
VerticalAlignment="Center"
Content="Start" />
<dxe:DateEdit
x:Name="StartDateDateEdit"
Grid.Row="2"
Grid.Column="1"
Height="23"
MinWidth="80"
Margin="3"
Background="White"
EditValue="{Binding Controller.DisplayStartDate}"
EditValueChanged="StartDate_OnChange"
MaskType="DateTimeAdvancingCaret" />
<dxe:TextEdit
x:Name="StartTimeTextEdit"
Grid.Row="2"
Grid.Column="2"
Height="23"
Margin="3"
EditValue="{Binding Controller.DisplayStartTime, Converter={StaticResource TimeSpanToDateTimeConverter}}"
EditValueChanged="StartTimeTextEdit_OnEditValueChanged"
IsEnabled="{Binding Path=Controller.AllDay, Converter={StaticResource BoolReverseConverter}}"
Mask="t"
MaskType="DateTime"
MaskUseAsDisplayFormat="True" />
<dxe:CheckEdit
x:Name="AllDay"
Grid.Row="2"
Grid.Column="3"
Margin="3"
HorizontalAlignment="Right"
Content="Ganztägig"
EditValue="{Binding Controller.AllDay}"
EditValueChanged="AllDay_OnEditValueChanged" />
<!-- Endregion -->
<!-- Region Ende -->
<Label
x:Name="EndLabel"
Grid.Row="3"
Grid.Column="0"
VerticalAlignment="Center"
Content="Ende" />
<dxe:DateEdit
x:Name="EndDate"
Grid.Row="3"
Grid.Column="1"
Height="23"
MinWidth="80"
Margin="3"
Background="White"
EditValue="{Binding Controller.DisplayEndDate}"
EditValueChanged="EndDate_OnChange"
MaskType="DateTimeAdvancingCaret" />
<dxe:TextEdit
x:Name="EndTime"
Grid.Row="3"
Grid.Column="2"
Height="23"
Margin="3"
EditValue="{Binding Controller.DisplayEndTime, Converter={StaticResource TimeSpanToDateTimeConverter}}"
EditValueChanged="EndTimeTextEdit_OnEditValueChanged"
IsEnabled="{Binding Path=Controller.AllDay, Converter={StaticResource BoolReverseConverter}}"
Mask="t"
MaskType="DateTime"
MaskUseAsDisplayFormat="True" />
<!-- Endregion -->
<!-- Region Zu erledigen bis (Aufgabe) -->
<Label
x:Name="DueDateLabel"
Grid.Row="4"
Grid.Column="0"
VerticalAlignment="Center"
Content="Zu erledigen bis"
Visibility="Collapsed" />
<dxe:DateEdit
x:Name="DueDate"
Grid.Row="4"
Grid.Column="1"
Grid.ColumnSpan="2"
Height="23"
MinWidth="80"
Margin="3"
AllowNullInput="True"
Background="White"
EditValue="{Binding Controller.DisplayDueDateDate}"
EditValueChanged="DueDate_OnEditValueChanged"
MaskType="DateTimeAdvancingCaret"
Visibility="Collapsed" />
<dxe:TextEdit
x:Name="DueDateTime"
Grid.Row="4"
Grid.Column="3"
Grid.ColumnSpan="2"
Width="38"
Height="23"
Margin="3"
AllowNullInput="True"
EditValue="{Binding Controller.DisplayDueDateTime}"
Mask="t"
MaskType="DateTime"
MaskUseAsDisplayFormat="True"
Visibility="Collapsed" />
<!-- Endregion -->
<!-- Region Mitarbeiter -->
<Label
Grid.Row="5"
Grid.Column="0"
VerticalAlignment="Center"
Content="{t:Translate MitarbeiterPlural}" />
<Grid
Grid.Row="5"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="23"
Margin="3,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBox
Grid.Column="0"
Grid.ColumnSpan="2"
Margin="0"
IsReadOnly="True"
Text="{Binding CountSelectedEmployees, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" />
<ToggleButton
x:Name="MitarbeiterToggleButton"
Grid.Column="1"
Width="19"
Height="19"
Margin="0,0,2,0"
IsThreeState="False"
Style="{StaticResource ExpanderLookAlikeToggleBotton}"
ToolTip="{markup:Translate Ausgewählte Mitarbeiter anzeigen}" />
</Grid>
<Popup
Name="PopupEmployee"
Grid.Row="5"
Grid.Column="1"
Width="450"
Height="300"
Margin="10"
Placement="MousePoint"
StaysOpen="False">
<search:MultiEmployeeSearch
x:Name="MultiEmployeeSearch"
ResultListBackground="{StaticResource EmployeeListBrush}"
SelectedEmployees="{Binding Controller.EmployeeList, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
SelectionChanged="MultiEmployeeSearch_OnSelectionChanged" />
</Popup>
<Button
x:Name="MitarbeiterPopUpOeffnenBtn"
Grid.Row="5"
Grid.Column="4"
Width="20"
Height="20"
Margin="3,0,3,0"
VerticalAlignment="Center"
Click="EmployeePopupClick">
<Grid
Width="18"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="4"
X2="12"
Y1="8"
Y2="8" />
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="8"
X2="8"
Y1="4"
Y2="12" />
</Grid>
</Button>
<ListBox
x:Name="SelectedMitarbeiter"
Grid.Row="6"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="70"
MaxHeight="70"
Margin="4,0,1,4"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
Background="{StaticResource ObjectEditBackgroundBrush}"
IsSynchronizedWithCurrentItem="True"
ItemContainerStyle="{DynamicResource MultiElementSelectionControlStyle}"
ItemsSource="{Binding Path=SelectedEmployees, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
Visibility="{Binding IsChecked, ElementName=MitarbeiterToggleButton, Converter={StaticResource BoolVisibilityConverter}}">
<ListBox.Template>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border
x:Name="Bd"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
SnapsToDevicePixels="True">
<ScrollViewer
Padding="{TemplateBinding Padding}"
Focusable="False"
HorizontalScrollBarVisibility="Disabled">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
</ControlTemplate>
</ListBox.Template>
</ListBox>
<!-- Endregion -->
<!-- Region Klienten -->
<Label
x:Name="CustomersLabel"
Grid.Row="7"
Grid.Column="0"
VerticalAlignment="Center"
Content="{markup:Translate Klienten}" />
<Grid
x:Name="CustomersGrid"
Grid.Row="7"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="23"
Margin="3,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBox
Grid.Column="0"
Grid.ColumnSpan="2"
IsReadOnly="True"
Text="{Binding CountSelectedCustomers, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" />
<ToggleButton
x:Name="KlientenToggleButton"
Grid.Column="1"
Width="19"
Height="19"
Margin="0,0,2,0"
IsThreeState="False"
Style="{StaticResource ExpanderLookAlikeToggleBotton}"
ToolTip="{markup:Translate Ausgewählte Klienten anzeigen}" />
</Grid>
<Button
x:Name="KlientenPopUpOeffnenBtn"
Grid.Row="7"
Grid.Column="4"
Width="20"
Height="20"
Margin="3,0,3,0"
VerticalAlignment="Center"
Click="CustomerPopUpEditClick">
<Grid
Width="18"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="4"
X2="12"
Y1="8"
Y2="8" />
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="8"
X2="8"
Y1="4"
Y2="12" />
</Grid>
</Button>
<Popup
Name="CustomerSearchViewPopup"
Grid.Row="7"
Grid.Column="1"
Width="450"
Height="300"
Margin="10"
Placement="MousePoint"
StaysOpen="False">
<search:MultiCustomerSearchView
x:Name="MultiCustomerSearch"
ResultListBackground="{StaticResource CustomerListBrush}"
SelectedCustomers="{Binding Controller.CustomerList, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
SelectionChanged="MultiCustomerSearch_OnSelectionChanged" />
</Popup>
<ListBox
x:Name="SelectedCustomersListBox"
Grid.Row="8"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="70"
MaxHeight="70"
Margin="4,0,1,4"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
Background="{StaticResource ObjectEditBackgroundBrush}"
IsSynchronizedWithCurrentItem="True"
ItemContainerStyle="{DynamicResource MultiElementSelectionControlStyle}"
ItemsSource="{Binding Path=SelectedCustomers, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
Visibility="{Binding IsChecked, ElementName=KlientenToggleButton, Converter={StaticResource BoolVisibilityConverter}}">
<ListBox.Template>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border
x:Name="Bd"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
SnapsToDevicePixels="True">
<ScrollViewer
Padding="{TemplateBinding Padding}"
Focusable="False"
HorizontalScrollBarVisibility="Disabled">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
</ControlTemplate>
</ListBox.Template>
<!--<ListBox.ItemTemplate>
<DataTemplate>
<Button Content="i"></Button>
</DataTemplate>
</ListBox.ItemTemplate>-->
</ListBox>
<!-- Endregion -->
<!-- Region Ressourcen -->
<Label
x:Name="ResourceLabel"
Grid.Row="9"
Grid.Column="0"
VerticalAlignment="Center"
Content="Ressourcen" />
<Grid
x:Name="ResourceToggleButtonGrid"
Grid.Row="9"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="23"
Margin="3,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBox
Grid.Column="0"
Grid.ColumnSpan="2"
IsReadOnly="True"
Text="{Binding CountSelectedResources, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" />
<ToggleButton
x:Name="RessourcenToggleButton"
Grid.Column="1"
Width="19"
Height="19"
Margin="0,0,2,0"
IsThreeState="False"
Style="{StaticResource ExpanderLookAlikeToggleBotton}"
ToolTip="Ausgewählte Ressourcen anzeigen" />
</Grid>
<Button
x:Name="RessourcenPopUpOeffnenBtn"
Grid.Row="9"
Grid.Column="4"
Width="20"
Height="20"
Margin="3,0,3,0"
VerticalAlignment="Center"
Click="ResourcePopUpClick">
<Grid
Width="18"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="4"
X2="12"
Y1="8"
Y2="8" />
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="8"
X2="8"
Y1="4"
Y2="12" />
</Grid>
</Button>
<Popup
Name="PopupResource"
Grid.Row="9"
Grid.Column="1"
Width="450"
Height="300"
Margin="10"
Placement="MousePoint"
StaysOpen="False">
<search:ResourcesTreeSearchView
x:Name="ResourcesTreeSearchView"
ResultListBackground="{StaticResource ResourceContentBrush}"
SelectedResources="{Binding Controller.ResourceList}"
SelectionChanged="ResourcesTreeSearchView_OnSelectionChanged" />
</Popup>
<ListBox
x:Name="ResourceListBox"
Grid.Row="10"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="70"
MaxHeight="70"
Margin="4,0,1,4"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
Background="{StaticResource ObjectEditBackgroundBrush}"
IsSynchronizedWithCurrentItem="True"
ItemContainerStyle="{StaticResource MultiResourceSelectionControlStyle}"
ItemsSource="{Binding Path=SelectedResources}"
Visibility="{Binding IsChecked, ElementName=RessourcenToggleButton, Converter={StaticResource BoolVisibilityConverter}}">
<ListBox.Template>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border
x:Name="Bd"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
SnapsToDevicePixels="True">
<ScrollViewer
Padding="{TemplateBinding Padding}"
Focusable="False"
HorizontalScrollBarVisibility="Disabled">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
</ControlTemplate>
</ListBox.Template>
</ListBox>
<!-- Endregion -->
<!-- Region Hilfeplan (Aufgabe) -->
<Label
x:Name="SupportConceptBtn"
Grid.Row="11"
Grid.Column="0"
VerticalAlignment="Center"
Content="Hilfeplan"
Visibility="Collapsed" />
<Button
x:Name="SupportConceptsPopUpOeffnenBtn"
Grid.Row="11"
Grid.Column="4"
Width="20"
Height="20"
Margin="3,0,3,0"
VerticalAlignment="Center"
Click="SupportConceptsPopUpClick"
Visibility="Collapsed">
<Grid
Width="18"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="4"
X2="12"
Y1="8"
Y2="8" />
<Line
Width="16"
Height="16"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Fill="{x:Null}"
Stroke="#FFFFFFFF"
StrokeEndLineCap="Round"
StrokeStartLineCap="Round"
StrokeThickness="2"
X1="8"
X2="8"
Y1="4"
Y2="12" />
</Grid>
</Button>
<Popup
Name="PopupSupportConcepts"
Grid.Row="11"
Grid.Column="1"
Width="450"
Height="300"
Margin="10"
Placement="MousePoint"
StaysOpen="False">
<search:SupportConceptSearchView
x:Name="SupportConceptsTreeSearchView"
ItemSelected="SupportConceptSelectionControl_ItemSelected"
ShowFilterPanel="True" />
</Popup>
<ListBox
Name="SelectedSupportConceptsListBox"
Grid.Row="11"
Grid.Column="1"
Grid.ColumnSpan="3"
Height="35"
MaxHeight="35"
Margin="4,0,1,4"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
Background="White"
IsSynchronizedWithCurrentItem="True"
ItemContainerStyle="{StaticResource MultiSupportConceptSelectionControlStyle}"
ItemsSource="{Binding Path=SelectedSupportConcepts, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
Visibility="Collapsed">
<ListBox.Template>
<ControlTemplate TargetType="{x:Type ListBox}">
<Border
x:Name="Bd"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
SnapsToDevicePixels="True">
<ScrollViewer
Padding="{TemplateBinding Padding}"
Focusable="False"
HorizontalScrollBarVisibility="Disabled">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
</ControlTemplate>
</ListBox.Template>
</ListBox>
<!-- Endregion -->
<!-- Region Beschreibung (Aufgabe) -->
<Label
x:Name="TaskDescriptionLabel"
Grid.Row="13"
Grid.Column="0"
VerticalAlignment="Top"
Content="Beschreibung"
Visibility="Collapsed" />
<TextBox
x:Name="TaskDescription"
Grid.Row="13"
Grid.Column="1"
Grid.ColumnSpan="4"
Height="45"
Margin="3"
AcceptsReturn="True"
HorizontalScrollBarVisibility="Disabled"
MaxLength="1024"
Text="{Binding Path=Controller.TaskDescription, UpdateSourceTrigger=PropertyChanged}"
TextWrapping="Wrap"
VerticalScrollBarVisibility="Auto"
Visibility="Collapsed" />
<!-- Endregion -->
<!-- Region Erledigt am (Aufgabe) -->
<Label
x:Name="CompletedDateLabel"
Grid.Row="14"
Grid.Column="0"
VerticalAlignment="Center"
Content="Erledigt am"
Visibility="Collapsed" />
<dxe:DateEdit
x:Name="CompletedDate"
Grid.Row="14"
Grid.Column="1"
Grid.ColumnSpan="4"
Height="23"
MinWidth="80"
Margin="3"
Background="White"
EditValue="{Binding Controller.DisplayCompletedDateDate}"
MaskType="DateTimeAdvancingCaret"
Visibility="Collapsed" />
<!-- Endregion -->
<!-- Region Notiz -->
<Label
x:Name="NoticeLabel"
Grid.Row="15"
Grid.Column="0"
VerticalAlignment="Top"
Content="Notiz" />
<TextBox
x:Name="Notice"
Grid.Row="15"
Grid.Column="1"
Grid.ColumnSpan="4"
Height="45"
Margin="3"
AcceptsReturn="True"
HorizontalScrollBarVisibility="Disabled"
MaxLength="1024"
Text="{Binding Path=Controller.Description, UpdateSourceTrigger=PropertyChanged}"
TextWrapping="Wrap"
VerticalScrollBarVisibility="Auto" />
<!-- Endregion -->
<!-- Region Serienmuster -->
<Label
x:Name="SerienLabel"
Grid.Row="16"
Grid.Column="0"
Margin="3"
Content="Wiederholung" />
<dxe:ComboBoxEdit
x:Name="EdtRecurrenceType"
Grid.Row="16"
Grid.Column="1"
Grid.ColumnSpan="4"
Margin="3"
EditValue="{Binding RecurrenceVisualController.RecurrenceElement, UpdateSourceTrigger=PropertyChanged}"
IsTextEditable="False"
ItemsSource="{Binding RecurrenceVisualController.RecurrenceElements}">
<dxe:ComboBoxEdit.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Description, Converter={StaticResource Recurrence2GermanConverter}}" />
</DataTemplate>
</dxe:ComboBoxEdit.ItemTemplate>
</dxe:ComboBoxEdit>
<Grid
x:Name="SerienGrid"
Grid.Row="17"
Grid.Column="0"
Grid.ColumnSpan="5"
Visibility="{Binding RecurrenceVisualController.EnableRecurrence, Converter={StaticResource BoolVisibilityConverter}}">
<StackPanel>
<dx:GroupFrame Margin="3" Header="Serienmuster">
<StackPanel>
<dxsch:DailyRecurrenceControl RecurrenceInfo="{Binding RecurrenceVisualController.RecurrenceInfo}" Visibility="{Binding RecurrenceVisualController.IsDailyRecurrence, Converter={dxschint:BoolToVisibilityConverter}}" />
<dxsch:WeeklyRecurrenceControl
x:Name="WeeklyRecurrenceControl"
RecurrenceInfo="{Binding RecurrenceVisualController.RecurrenceInfo}"
Visibility="{Binding RecurrenceVisualController.IsWeeklyRecurrence, Converter={dxschint:BoolToVisibilityConverter}}" />
<dxsch:MonthlyRecurrenceControl
x:Name="MonthlyRecurrenceControl"
RecurrenceInfo="{Binding RecurrenceVisualController.RecurrenceInfo}"
Visibility="{Binding RecurrenceVisualController.IsMonthlyRecurrence, Converter={dxschint:BoolToVisibilityConverter}}" />
<dxsch:YearlyRecurrenceControl
x:Name="YearlyRecurrenceControl"
RecurrenceInfo="{Binding RecurrenceVisualController.RecurrenceInfo}"
Visibility="{Binding RecurrenceVisualController.IsYearlyRecurrence, Converter={dxschint:BoolToVisibilityConverter}}" />
</StackPanel>
</dx:GroupFrame>
<dx:GroupFrame Margin="3" Header="Seriendauer">
<dxsch:RecurrenceRangeControl
Pattern="{Binding Controller.PatternCopy}"
RecurrenceInfo="{Binding RecurrenceVisualController.RecurrenceInfo}"
TimeZoneHelper="{Binding ElementName=AptForm, Path=TimeZoneHelper, Mode=OneTime}" />
</dx:GroupFrame>
</StackPanel>
</Grid>
<!-- Endregion -->
<!-- Region Privater Termin -->
<CheckBox
x:Name="IsPrivateCheckBox"
Grid.Row="18"
Grid.Column="0"
Margin="3"
Content="Privater Termin"
IsChecked="{Binding Controller.IsPrivate}" />
<!-- Endregion -->
<!-- Region Buttons -->
<UniformGrid
Grid.Row="19"
Grid.Column="0"
Grid.ColumnSpan="5"
HorizontalAlignment="Right"
Columns="3"
Rows="1">
<Button
x:Name="OkButton"
Width="80"
Height="25"
Margin="3"
Click="OkButtonClick"
Content="OK" />
<Button
x:Name="CancelButton"
Width="80"
Height="25"
Margin="3"
Click="CancelButtonClick"
Content="Abbrechen" />
<!--<Button Margin="3" Click="button_CreatZeiterfassung_Click" x:Name="ZeiterfassButton" Content="Zeiterfassung" Height="25" Width="80" />-->
<Button
x:Name="DeleteButton"
Width="80"
Height="25"
Margin="3"
Click="DeleteButtonClick"
Content="Löschen" />
</UniformGrid>
<!-- Endregion -->
</Grid>
</Grid>
</localSchView:AbstractAppointmentEditForm>