80 lines
2.6 KiB
C#
80 lines
2.6 KiB
C#
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 UCProjektList.xaml
|
|
/// </summary>
|
|
public partial class UCProjektList : UserControl
|
|
{
|
|
public event EventHandler<SelectProjektEventArgs> ProjektAdded;
|
|
public event EventHandler<SelectProjektEventArgs> ProjektEdited;
|
|
public event EventHandler<SelectProjektEventArgs> ProjektSelected;
|
|
public UCProjektList()
|
|
{
|
|
InitializeComponent();
|
|
this.DataContext = new ProjektListViewModel();
|
|
}
|
|
|
|
private void ProjektSelect_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
Projekt selectedProjekt = (dgProjekte.SelectedItem as Projekt);
|
|
if (selectedProjekt == null) return;
|
|
OnClickProjektSelect(new SelectProjektEventArgs() { projekt = selectedProjekt });
|
|
}
|
|
|
|
private void ProjektEdit_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
Projekt selectedProjekt = (dgProjekte.SelectedItem as Projekt);
|
|
if (selectedProjekt == null) return;
|
|
OnClickProjektEdit(new SelectProjektEventArgs() { projekt = selectedProjekt });
|
|
}
|
|
|
|
private void ProjektNew_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
OnClickProjektAdd(
|
|
new SelectProjektEventArgs()
|
|
{
|
|
projekt = (DataContext as ProjektListViewModel).NeueProjekt()
|
|
});
|
|
}
|
|
|
|
protected virtual void OnClickProjektSelect(SelectProjektEventArgs e)
|
|
{
|
|
EventHandler<SelectProjektEventArgs> handler = ProjektSelected;
|
|
if (handler != null)
|
|
handler(this, e);
|
|
}
|
|
protected virtual void OnClickProjektEdit(SelectProjektEventArgs e)
|
|
{
|
|
EventHandler<SelectProjektEventArgs> handler = ProjektEdited;
|
|
if (handler != null)
|
|
handler(this, e);
|
|
}
|
|
protected virtual void OnClickProjektAdd(SelectProjektEventArgs e)
|
|
{
|
|
EventHandler<SelectProjektEventArgs> handler = ProjektAdded;
|
|
if (handler != null)
|
|
handler(this, e);
|
|
}
|
|
}
|
|
|
|
public class SelectProjektEventArgs : EventArgs
|
|
{
|
|
public Projekt projekt { get; set; }
|
|
}
|
|
}
|