Datenschnittstelle erweitert

This commit is contained in:
HuskyTeufel
2022-05-30 15:51:01 +02:00
parent b2a9d46c4d
commit 455f57fd35
38 changed files with 647 additions and 116 deletions

View File

@@ -1,4 +1,8 @@
using System;
using DichtheitManagement.Contract;
using GuiWPF.ViewModel;
using Mappings;
using Ninject;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
@@ -16,8 +20,16 @@ namespace GuiWPF
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
#if !DEBUG
MessageBox.Show("Kein gültiger Lizenz gefunden!");
Environment.Exit(0);
#else
var window = new MainWindow() { DataContext = new MainWindowViewModel() };
window.Show();
#endif
}
}
}

View File

@@ -7,7 +7,11 @@
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\GuiWPF_ViewModel\GuiWPF_ViewModel.csproj" />
<PackageReference Include="Ninject" Version="3.3.5" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Mappings\Mappings.csproj" />
</ItemGroup>
</Project>

View File

@@ -1,5 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
<ItemGroup />
<ItemGroup>
<Compile Update="Views\AuftraggeberListPageView.xaml.cs">
<SubType>Code</SubType>
</Compile>
<Compile Update="Views\AuftraggeberEditPage.xaml.cs">
<SubType>Code</SubType>
</Compile>
<Compile Update="Views\BauvorhabenEditPageView.xaml.cs">
<SubType>Code</SubType>
</Compile>
<Compile Update="Views\SewerObjectDetailsPageView.xaml.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<Page Update="Views\AuftraggeberListPageView.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="Views\AuftraggeberEditPage.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="Views\BauvorhabenEditPageView.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="Views\SewerObjectDetailsPageView.xaml">
<SubType>Designer</SubType>
</Page>
</ItemGroup>
</Project>

View File

@@ -4,21 +4,38 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:GuiWPF"
xmlns:viewmodel="clr-namespace:GuiWPF.ViewModel"
xmlns:views="clr-namespace:GuiWPF.Views"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
Title="MainWindow" Height="420" Width="1041">
<Window.Resources>
<DataTemplate DataType="{x:Type local:HomePageViewModel}">
<local:HomePageView />
<DataTemplate DataType="{x:Type viewmodel:HomePageViewModel}">
<views:HomePageView />
</DataTemplate>
<DataTemplate DataType="{x:Type local:SettingsPageViewModel}">
<local:SettingsPageView />
<DataTemplate DataType="{x:Type viewmodel:SettingsPageViewModel}">
<views:SettingsPageView />
</DataTemplate>
<DataTemplate DataType="{x:Type viewmodel:AuftraggeberListPageViewModel}">
<views:AuftraggeberListPageView />
</DataTemplate>
<DataTemplate DataType="{x:Type viewmodel:AuftraggeberEditPageViewModel}">
<views:AuftraggeberEditPage />
</DataTemplate>
<DataTemplate DataType="{x:Type viewmodel:SewerObjectDetailsPageViewModel}">
<views:SewerObjectDetailsPageView />
</DataTemplate>
</Window.Resources>
<DockPanel>
<StackPanel DockPanel.Dock="Left">
<Button Content="Home Page" Command="{Binding Path=LoadHomePageCommand}" />
<!--<Button Content="Auftraggebers" Command="{Binding Path=LoadAuftraggeberListPageCommand}" />
<Button Content="Auftraggeber Editieren" Command="{Binding Path=LoadEditAuftraggeberPageCommand}" />
<Button Content="Home Page" Command="{Binding Path=LoadHomePageCommand}" />-->
<Button Content="Settings Page" Command="{Binding Path=LoadSettingsPageCommand}" />
<Button Content="Neue Prüfobjekt hinzufügen" Command="{Binding Path=AddNewInspektionsObjektCommand}" />
</StackPanel>
<ListBox Name="Auftraggeber" ItemsSource="{Binding Path=AuftraggeberListe}" SelectedItem="{Binding Path=SelectedAuftraggeber}" />
<ListBox Name="Baustellen" ItemsSource="{Binding Path=BauvorhabenListe}" SelectedItem="{Binding Path=SelectedBauvorhaben}" />
<ListBox Name="Prüfobjekte" ItemsSource="{Binding Path=InspektionsobjekteListe}" SelectedItem="{Binding Path=SelectedSewerObject}" />
<ContentControl Content="{Binding Path=CurrentViewModel}" />
</DockPanel>
</Window>

View File

@@ -1,45 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Input;
namespace GuiWPF
{
public class MainWindowViewModel : ViewModelBase
{
public ICommand LoadHomePageCommand { get; private set; }
public ICommand LoadSettingsPageCommand { get; private set;}
private ViewModelBase _currentViewModel;
public ViewModelBase CurrentViewModel
{
get => _currentViewModel;
set
{
_currentViewModel = value;
OnPropertyChanged();
}
}
public MainWindowViewModel()
{
this.LoadHomePage();
this.LoadHomePageCommand = new DelegateCommand(o => this.LoadHomePage());
this.LoadSettingsPageCommand = new DelegateCommand(o => this.LoadSettingsPage());
}
private void LoadHomePage()
{
CurrentViewModel = new HomePageViewModel(
new HomePage { PageTitle = "This is the Home Page" });
}
private void LoadSettingsPage()
{
CurrentViewModel = new SettingsPageViewModel(
new SettingsPage() { PageTitle = "This is the SettingsPage" });
}
}
}

View File

@@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Input;
namespace GuiWPF.ViewModel
{
public class AuftraggeberEditPageViewModel : ViewModelBase
{
Models.Auftraggeber _model;
DichtheitManagement.Contract.IAuftraggeberManager _auftraggeberManager;
public string Name { get => _model.Name; set => _model.Name = value;}
public string Strasse { get => _model.Strasse; set => _model.Strasse = value; }
public string Ort { get => _model.Ort; set => _model.Ort = value;}
public string Telefon { get => _model.Tel; set => _model.Tel = value;}
public ICommand SaveCommand { get;private set;}
public AuftraggeberEditPageViewModel(Models.Auftraggeber auftraggeber, DichtheitManagement.Contract.IAuftraggeberManager auftraggeberManager)
{
_model = auftraggeber;
_auftraggeberManager = auftraggeberManager;
SaveCommand = new DelegateCommand(o => this.SaveAuftraggeber());
}
private void SaveAuftraggeber()
{
_auftraggeberManager.Update(_model);
}
}
}

View File

@@ -0,0 +1,31 @@
using DichtheitManagement.Contract;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GuiWPF.ViewModel
{
public class AuftraggeberListPageViewModel : ViewModelBase
{
private IAuftraggeberManager auftraggeberManager;
public List<Models.Auftraggeber> Auftraggeberlist { get; set; }
/*public AuftraggeberListPageViewModel(IQueryable<Models.Auftraggeber> auftraggeberlist)
{
Auftraggeberlist = auftraggeberlist.ToList();
Auftraggeberlist.Last().Name = "Damian";
}
*/
public AuftraggeberListPageViewModel(IAuftraggeberManager auftraggeberManager)
{
this.auftraggeberManager = auftraggeberManager;
Auftraggeberlist = auftraggeberManager.GetAllAuftraggeber().ToList();
//Auftraggeberlist.Last().Name = "Damian";
}
}
}

View File

@@ -0,0 +1,26 @@
using DichtheitManagement.Contract;
using Mappings;
using Ninject;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GuiWPF.ViewModel
{
internal class BauvorhabenEditPageViewModel : ViewModelBase
{
public BauvorhabenEditPageViewModel()
{
var kernel = new StandardKernel();
new KernelInitializer().Initialize(kernel);
var baustellen = kernel.Get<IBaustelleManager>();
var s = baustellen.GetBauvorhaben(1);
s.Standort = "Timbuktu";
baustellen.Update(s);
OnPropertyChanged("BauvorhabenListe");
}
}
}

View File

@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GuiWPF
namespace GuiWPF.ViewModel
{
public class HomePageViewModel : ViewModelBase
{

View File

@@ -0,0 +1,170 @@
using DichtheitManagement.Contract;
using Mappings;
using Ninject;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Input;
namespace GuiWPF.ViewModel
{
public class MainWindowViewModel : ViewModelBase
{
public ICommand LoadHomePageCommand { get; private set; }
public ICommand LoadSettingsPageCommand { get; private set;}
public ICommand LoadAuftraggeberListPageCommand { get; private set; }
public ICommand LoadEditAuftraggeberPageCommand { get; private set; }
public ICommand AddNewInspektionsObjektCommand { get; private set; }
private Models.Auftraggeber _selectedAuftraggeber;
private Models.Bauvorhaben _selectedBauvorhaben;
private Models.Inspektionsobjekt _selectedsewerobject;
public List<Models.Auftraggeber> AuftraggeberListe { get => auftraggeberlist.ToList(); }
public List<Models.Bauvorhaben> BauvorhabenListe
{
get
{
if(SelectedAuftraggeber != null && SelectedAuftraggeber.Baustellen != null)
return SelectedAuftraggeber.Baustellen.ToList();
return new List<Models.Bauvorhaben>();
}
set
{
OnPropertyChanged();
}
}
public List<Models.Inspektionsobjekt> InspektionsobjekteListe
{
get
{
if(SelectedAuftraggeber != null && SelectedBauvorhaben.Prüfobjekte != null)
return SelectedBauvorhaben.Prüfobjekte.ToList();
return new List<Models.Inspektionsobjekt>();
}
set
{
OnPropertyChanged();
}
}
public Models.Bauvorhaben SelectedBauvorhaben
{
get => _selectedBauvorhaben;
set
{
if(value != _selectedBauvorhaben)
{
_selectedBauvorhaben = value;
OnPropertyChanged();
InspektionsobjekteListe.Clear();
InspektionsobjekteListe = _selectedBauvorhaben.Prüfobjekte;
}
}
}
public Models.Auftraggeber SelectedAuftraggeber
{
get => _selectedAuftraggeber;
set
{
if(value != _selectedAuftraggeber)
{
_selectedAuftraggeber = value;
OnPropertyChanged();
BauvorhabenListe.Clear();
BauvorhabenListe = baustellenManager.GetBauvorhaben(SelectedAuftraggeber);
}
}
}
public Models.Inspektionsobjekt SelectedSewerObject
{
get => _selectedsewerobject;
set
{
if(value != _selectedsewerobject)
{
_selectedsewerobject = value;
OnPropertyChanged();
CurrentViewModel = new SewerObjectDetailsPageViewModel(SelectedSewerObject);
}
}
}
private ViewModelBase _currentViewModel;
private IQueryable<Models.Auftraggeber> auftraggeberlist = null;
private IAuftraggeberManager auftraggeberManager = null;
private IBaustelleManager baustellenManager = null;
private StandardKernel kernel = null;
public ViewModelBase CurrentViewModel
{
get => _currentViewModel;
set
{
_currentViewModel = value;
OnPropertyChanged();
}
}
public MainWindowViewModel()
{
this.LoadHomePage();
this.LoadAuftraggeberListPageCommand = new DelegateCommand(o => this.LoadAuftraggeberListPage());
this.LoadEditAuftraggeberPageCommand = new DelegateCommand(o => this.LoadAuftraggeberEditPage());
this.LoadHomePageCommand = new DelegateCommand(o => this.LoadHomePage());
this.LoadSettingsPageCommand = new DelegateCommand(o => this.LoadSettingsPage());
this.AddNewInspektionsObjektCommand = new DelegateCommand(o => this.AddNewInspektionsObjekt());
kernel = new StandardKernel();
new KernelInitializer().Initialize(kernel);
auftraggeberManager = kernel.Get<IAuftraggeberManager>();
baustellenManager = kernel.Get<IBaustelleManager>();
auftraggeberlist = auftraggeberManager.GetAllAuftraggeber();
}
private void AddNewInspektionsObjekt()
{
if (SelectedBauvorhaben.Prüfobjekte == null)
SelectedBauvorhaben.Prüfobjekte = new List<Models.Inspektionsobjekt>();
SelectedBauvorhaben.Prüfobjekte.Add(new Models.Inspektionsobjekt());
auftraggeberManager.Update(SelectedAuftraggeber);
}
private void LoadHomePage()
{
CurrentViewModel = new HomePageViewModel(
new HomePage { PageTitle = "This is the Home Page" });
}
private void LoadSettingsPage()
{
CurrentViewModel = new SettingsPageViewModel(
new SettingsPage() { PageTitle = "This is the SettingsPage" });
//auftraggeberManager.Update(auftraggeberlist.OrderBy(y => y.Id).Last());
BauvorhabenEditPageViewModel bauvorhaben = new BauvorhabenEditPageViewModel();
}
private void LoadAuftraggeberEditPage()
{
CurrentViewModel = new AuftraggeberEditPageViewModel(auftraggeberManager.GetAllAuftraggeber().OrderBy(y => y.Id).Last(),auftraggeberManager);
}
private void LoadAuftraggeberListPage()
{
CurrentViewModel = new AuftraggeberListPageViewModel(auftraggeberManager);
}
}
}

View File

@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GuiWPF
namespace GuiWPF.ViewModel
{
public class SettingsPageViewModel : ViewModelBase
{

View File

@@ -0,0 +1,51 @@
using Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GuiWPF.ViewModel
{
internal class SewerObjectDetailsPageViewModel : ViewModelBase
{
private Inspektionsobjekt _model;
public SewerObjectDetailsPageViewModel(Inspektionsobjekt selectedSewerObject)
{
this._model = selectedSewerObject;
}
#region getsetters
public string ObjektName
{
get => _model.Objektname;
set => _model.Objektname = value;
}
public string ObenName
{
get => _model.ObereSchacht;
set => _model.ObereSchacht = value;
}
public string UntenName
{
get => _model.UntereSchacht;
set => _model.UntereSchacht= value;
}
public decimal ObjektLength
{
get => _model.ObjektLänge;
set => _model.ObjektLänge = value;
}
public decimal Durchmesser
{
get => _model.Durchmesser;
set => _model.Durchmesser = value;
}
public string Bemerkung
{
get => _model.Bemerkung;
set => _model.Bemerkung = value;
}
#endregion
}
}

View File

@@ -0,0 +1,34 @@
<UserControl x:Class="GuiWPF.Views.AuftraggeberEditPage"
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:GuiWPF.Views"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Label Grid.Row="0" Grid.Column="0" Content="Name" />
<Label Grid.Row="1" Grid.Column="0" Content="Straße" />
<Label Grid.Row="2" Grid.Column="0" Content="Ort" />
<Label Grid.Row="3" Grid.Column="0" Content="Telefon" />
<TextBox Grid.Row="0" Grid.Column="1" Text="{Binding Path=Name}" />
<TextBox Grid.Row="1" Grid.Column="1" Text="{Binding Path=Strasse}" />
<TextBox Grid.Row="2" Grid.Column="1" Text="{Binding Path=Ort}" />
<TextBox Grid.Row="3" Grid.Column="1" Text="{Binding Path=Telefon}" />
<Button Grid.Row="4" Grid.ColumnSpan="2" Content="Speichern" Command="{Binding Path=SaveCommand}" />
</Grid>
</UserControl>

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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 GuiWPF.Views
{
/// <summary>
/// Interaction logic for AuftraggeberEditPage.xaml
/// </summary>
public partial class AuftraggeberEditPage : UserControl
{
public AuftraggeberEditPage()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,15 @@
<UserControl x:Class="GuiWPF.Views.AuftraggeberListPageView"
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:GuiWPF"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800"
>
<Grid>
<Label>Auftraggebers</Label>
<ListBox ItemsSource="{Binding Auftraggeberlist}"></ListBox>
</Grid>
</UserControl>

View File

@@ -0,0 +1,29 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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 GuiWPF.Views
{
/// <summary>
/// Interaction logic for AuftraggeberListPageView.xaml
/// </summary>
public partial class AuftraggeberListPageView : UserControl
{
public AuftraggeberListPageView()
{
InitializeComponent();
}
}
}

View File

@@ -0,0 +1,12 @@
<UserControl x:Class="GuiWPF.Views.BauvorhabenEditPageView"
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:GuiWPF.Views"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<Grid>
</Grid>
</UserControl>

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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 GuiWPF.Views
{
/// <summary>
/// Interaction logic for BauvorhabenEditPageView.xaml
/// </summary>
public partial class BauvorhabenEditPageView : UserControl
{
public BauvorhabenEditPageView()
{
InitializeComponent();
}
}
}

View File

@@ -1,4 +1,4 @@
<UserControl x:Class="GuiWPF.HomePageView"
<UserControl x:Class="GuiWPF.Views.HomePageView"
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"

View File

@@ -13,7 +13,7 @@ using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace GuiWPF
namespace GuiWPF.Views
{
/// <summary>
/// Interaktionslogik für HomePageView.xaml

View File

@@ -1,4 +1,4 @@
<UserControl x:Class="GuiWPF.SettingsPageView"
<UserControl x:Class="GuiWPF.Views.SettingsPageView"
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"

View File

@@ -13,7 +13,7 @@ using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace GuiWPF
namespace GuiWPF.Views
{
/// <summary>
/// Interaktionslogik für SettingsPageView.xaml

View File

@@ -0,0 +1,36 @@
<UserControl x:Class="GuiWPF.Views.SewerObjectDetailsPageView"
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:GuiWPF.Views"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" MinWidth="400" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Grid.Row="0" Content="Objektname" />
<Label Grid.Column="0" Grid.Row="1" Content="Obere Schacht" />
<Label Grid.Column="0" Grid.Row="2" Content="Untere Schacht" />
<Label Grid.Column="0" Grid.Row="3" Content="Objektlänge" />
<Label Grid.Column="0" Grid.Row="4" Content="Durchmesser" />
<Label Grid.Column="0" Grid.Row="5" Content="Bemerkung" />
<TextBox Grid.Column="1" Grid.Row="0" Text="{Binding ObjektName}" />
<TextBox Grid.Column="1" Grid.Row="1" Text="{Binding ObenName}" />
<TextBox Grid.Column="1" Grid.Row="2" Text="{Binding UntenName}" />
<TextBox Grid.Column="1" Grid.Row="3" Text="{Binding ObjektLength}" />
<TextBox Grid.Column="1" Grid.Row="4" Text="{Binding Durchmesser}" />
<TextBox Grid.Column="1" Grid.Row="5" Text="{Binding Bemerkung}" />
</Grid>
</UserControl>

View File

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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 GuiWPF.Views
{
/// <summary>
/// Interaction logic for SewerObjectDetails.xaml
/// </summary>
public partial class SewerObjectDetailsPageView : UserControl
{
public SewerObjectDetailsPageView()
{
InitializeComponent();
}
}
}