Leistungsverzeichnis kann nun den Baustellen zugeordnet werden

This commit is contained in:
Husky
2020-04-14 14:22:40 +02:00
parent a2ee9cdeab
commit b24e724cd3
17 changed files with 310 additions and 81 deletions

View File

@@ -23,6 +23,6 @@
<DataGridTextColumn Header="Tag" Binding="{Binding Tag}" />
</DataGrid.Columns>
</DataGrid>
<Button Grid.Row="1" Name="NewLVPosition" Content="Neue LeistungsverzeichnisPosition" />
<Button Grid.Row="1" Name="NewLVPosition" Content="Neue LeistungsverzeichnisPosition" Click="NewLVPosition_Click" />
</Grid>
</UserControl>

View File

@@ -1,4 +1,5 @@
using System;
using KanSan.ViewModel;
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
@@ -21,6 +22,12 @@ namespace KanSan.UI
public UCLeistungsverzeichnisPosList()
{
InitializeComponent();
this.DataContext = new LeistungsverzeichnisPositionenListViewModel(string.Empty);
}
private void NewLVPosition_Click(object sender, RoutedEventArgs e)
{
(DataContext as LeistungsverzeichnisPositionenListViewModel).NeueLeistungsverzeichnisPosition();
}
}
}

View File

@@ -0,0 +1,38 @@
<UserControl x:Class="KanSan.UI.UCLeistungsverzeichnisPosition"
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:KanSan.UI"
xmlns:sd="clr-namespace:KanSan.SampleData"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<d:UserControl.DataContext>
<sd:LeistungsverzeichnisPositionViewModelSampleData />
</d:UserControl.DataContext>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Label Grid.Column="0" Grid.Row="0" Content="Positionsnummer" />
<Label Grid.Column="0" Grid.Row="1" Content="Beschreibung" />
<Label Grid.Column="0" Grid.Row="2" Content="Einheit" />
<Label Grid.Column="0" Grid.Row="3" Content="Tag" />
<TextBox Grid.Column="1" Grid.Row="0" Text="{Binding Positionsnummer}" />
<TextBox Grid.Column="1" Grid.Row="1" Text="{Binding Beschreibung}" />
<TextBox Grid.Column="1" Grid.Row="2" Text="{Binding Einheit}" />
<TextBox Grid.Column="1" Grid.Row="3" Text="{Binding Tag}" />
<Button Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="2" Content="Speichern" Name="Save" />
</Grid>
</UserControl>

View File

@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
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 KanSan.UI
{
/// <summary>
/// Interaktionslogik für UCLeistungsverzeichnisPosition.xaml
/// </summary>
public partial class UCLeistungsverzeichnisPosition : UserControl
{
public UCLeistungsverzeichnisPosition()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,52 @@
<UserControl x:Class="KanSan.UI.UCLeistungsverzeichnisPositionenBaustelle"
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:KanSan.UI"
xmlns:sd="clr-namespace:KanSan.SampleData"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="./../../my_controls.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<d:UserControl.DataContext>
<sd:LeistungsverzeichnisBaustelleViewModelSampleData />
</d:UserControl.DataContext>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="57*" />
<RowDefinition Height="320*" />
<RowDefinition Height="73*" />
</Grid.RowDefinitions>
<ComboBox ItemsSource="{Binding Baustellen}" Name="Baustellen" SelectionChanged="Baustellen_SelectionChanged" />
<DataGrid Grid.Row="1" Name="Leistungsverzeichnis" ItemsSource="{Binding LeistungsverzeichnisPositionen}" AutoGenerateColumns="False">
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background" Value="Gray" />
</Style>
</DataGrid.RowStyle>
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="Aktiviert" IsReadOnly="True" Binding="{Binding IsActiveInBaustelle}" ElementStyle="{StaticResource checkBoxCircleSmall}" />
<DataGridTextColumn Header="Positionsnummer" Binding="{Binding Positionsnummer}" />
<DataGridTextColumn Header="Beschreibung" Binding="{Binding Beschreibung}" />
<DataGridTextColumn Header="Einheit" Binding="{Binding Einheit}" />
<DataGridTextColumn Header="Tag" Binding="{Binding Tag}" />
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="Aktivieren / Deaktivieren" Name="AktivierenDeaktivieren" Click="AktivierenDeaktivieren_Click" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
<Button Grid.Row="2" Content="Speichern" Name="Speichern" Click="Speichern_Click" />
</Grid>
</UserControl>

View File

@@ -0,0 +1,53 @@
using KanSan.Base.Models;
using KanSan.ViewModel;
using System;
using System.Collections.Generic;
using System.Diagnostics;
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 KanSan.UI
{
/// <summary>
/// Interaktionslogik für LeistungsverzeichnisPositionenBaustelle.xaml
/// </summary>
public partial class UCLeistungsverzeichnisPositionenBaustelle : UserControl
{
public UCLeistungsverzeichnisPositionenBaustelle()
{
InitializeComponent();
this.DataContext = new LeistungsverzeichnisBaustelleViewModel();
}
private void Baustellen_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
Baustelle baustelle = (Baustelle)(sender as ComboBox).SelectedItem;
if (baustelle == null) return;
(DataContext as LeistungsverzeichnisBaustelleViewModel).SelectedBaustelle = baustelle;
}
private void Speichern_Click(object sender, RoutedEventArgs e)
{
//Debugger.Break();
(DataContext as LeistungsverzeichnisBaustelleViewModel).Speichern();
}
private void AktivierenDeaktivieren_Click(object sender, RoutedEventArgs e)
{
LeistungsverzeichnisViewPosition leistungsverzeichnisViewPosition = (LeistungsverzeichnisViewPosition)(sender as Button).DataContext;
if (leistungsverzeichnisViewPosition == null) return;
(DataContext as LeistungsverzeichnisBaustelleViewModel).ToggleActive(leistungsverzeichnisViewPosition);
// Debugger.Break();
}
}
}