Schädenlist angefangen

This commit is contained in:
Husky
2020-03-28 14:51:28 +01:00
parent 38a22e3803
commit 58764bc307
13 changed files with 827 additions and 6 deletions

View File

@@ -37,6 +37,9 @@
<Compile Update="UI\Objekte\UCObjektEdit.xaml.cs">
<SubType>Code</SubType>
</Compile>
<Compile Update="UI\Schäden\UCSchaedenList.xaml.cs">
<SubType>Code</SubType>
</Compile>
<Compile Update="UI\UCSewerMainMenu.xaml.cs">
<SubType>Code</SubType>
</Compile>
@@ -78,6 +81,9 @@
<Page Update="UI\Objekte\UCObjektEdit.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="UI\Schäden\UCSchaedenList.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="UI\UCSewerMainMenu.xaml">
<SubType>Designer</SubType>
</Page>

View File

@@ -131,10 +131,15 @@ namespace KanSan
ContentController.Content = new UI.UCObjektEdit(actualSelectedSewer);
break;
case UI.ESewerMainMenuCommand.SCHAEDEN:
ContentController.Content = new UI.UCSchaedenList(actualSelectedSewer);
break;
case UI.ESewerMainMenuCommand.NONE:
ContentController.Content = "Wird nicht unterstützt";
break;
}
}
private void rbKunden_Checked(object sender, RoutedEventArgs e)

View File

@@ -0,0 +1,28 @@
using KanSan.Base.Interfaces.UI;
using KanSan.Base.Models;
using System;
using System.Collections.Generic;
using System.Text;
namespace KanSan.SampleData
{
class SchaedenListViewModelSampleData : ISchaedenListViewModel
{
List<Schaeden> schaeden = new List<Schaeden>();
public List<Schaeden> Schaeden { get => schaeden; set => throw new NotImplementedException(); }
public SchaedenListViewModelSampleData()
{
for (int i = 0; i < 2; i++)
{
schaeden.Add(new Base.Models.Schaeden()
{
SanierungsTyp = Base.Enums.ESanierung.REPERATUR,
Entfernung = i,
WurzelInkrustationAblagerungen = true
}) ;
}
}
}
}

View File

@@ -0,0 +1,37 @@
<UserControl x:Class="KanSan.UI.UCSchaedenList"
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" Background="Gray"
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:SchaedenListViewModelSampleData />
</d:UserControl.DataContext>
<Grid>
<DataGrid ItemsSource="{Binding Schaeden}" Background="Gray" AutoGenerateColumns="False" Margin="0,0,-32,0">
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background" Value="Gray" />
</Style>
</DataGrid.RowStyle>
<DataGrid.Columns>
<DataGridTextColumn Header="Entfernung" IsReadOnly="True" Binding="{Binding Entfernung}" Width="auto" />
<DataGridTextColumn Header="Sanierungstyp" IsReadOnly="True" Binding="{Binding SanierungsTyp}" />
<DataGridCheckBoxColumn Header="Riss&#x0a;Bruch&#x0a;Scherbe" IsReadOnly="True" Width="auto" ElementStyle="{StaticResource checkBoxCircleSmall}" Binding="{Binding RissBruchScherbe}" />
<DataGridCheckBoxColumn Header="Wurzeln&#x0a;Inkrustation&#x0a;Ablagerungen" IsReadOnly="True" Width="auto" Binding="{Binding WurzelInkrustationAblagerungen}" ElementStyle="{StaticResource checkBoxCircleSmall}" />
<DataGridCheckBoxColumn Header="Einragende&#x0a;Stutzen" Width="auto" IsReadOnly="True" ElementStyle="{StaticResource checkBoxCircleSmall}" Binding="{Binding StutzenEinragend}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</UserControl>

View File

@@ -0,0 +1,29 @@
using KanSan.Base.Models;
using KanSan.ViewModel;
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 UCSchaedenList.xaml
/// </summary>
public partial class UCSchaedenList : UserControl
{
public UCSchaedenList(Sewer actualSelectedSewer)
{
InitializeComponent();
this.DataContext = new SchaedenListViewModel(actualSelectedSewer);
}
}
}

View File

@@ -62,5 +62,39 @@
</Setter.Value>
</Setter>
</Style>
<Style x:Key="checkBoxCircleSmall" TargetType="{x:Type CheckBox}">
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="Margin" Value="0" />
<Setter Property="Content" Value="" />
<Setter Property="IsEnabled" Value="{Binding Change}" />
<Setter Property="FrameworkElement.FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Foreground" Value="#FFFFFFFF" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"/>
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Ellipse Name="outerEllipse" Grid.Column="0" Width="30" Height="30" StrokeThickness="2" Stroke="#FFFFFFFF" />
<Ellipse Name="highlightCircle" Grid.Column="0" Width="20" Height="20" Fill="#FFFFFFFF"/>
<ContentPresenter Name="content" Grid.Column="1" Content="{TemplateBinding Content}" Margin="5,0,0,0" HorizontalAlignment="Left" VerticalAlignment="Center" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="ToggleButton.IsChecked" Value="True">
<Setter TargetName="highlightCircle" Property="Shape.Fill" Value="BlueViolet"/>
</Trigger>
<Trigger Property="ToggleButton.IsChecked" Value="False">
<Setter TargetName="highlightCircle" Property="Shape.Fill" Value="#FFFFFFFF" />
</Trigger>
<Trigger Property="UIElement.IsFocused" Value="True">
<Setter TargetName="outerEllipse" Property="Shape.Stroke" Value="BlueViolet" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>