Programm_Wirl/AA-Forms/FormBenutzerVW.cs
2025-11-30 11:51:28 +01:00

110 lines
3.3 KiB
C#

using BrightIdeasSoftware;
using DatenDB;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Security;
using System.Windows.Forms;
namespace Deckungsbeitrag
{
public partial class FormBenutzerVW : Form
{
public Fehlermeldungen meldung = new Fehlermeldungen();
public Benutzer user;
public FormBenutzerVW()
{
InitializeComponent();
//Load_ListView();
}
private void FormBenutzerVW_Load(object sender, EventArgs e)
{
List<object> list = new List<object>();
try
{
list = new List<object>(Benutzer.GetList());
Load_OLV(list);
}
catch (Exception ex)
{
meldung.IsUpdating(ex);
this.Close();
}
}
private void Load_OLV(List<object> alist)
{
Generator.GenerateColumns(this.objectListViewBenutzer, typeof(Benutzer), true);
this.objectListViewBenutzer.SetObjects(alist);
OLVColumn sortcolumn = (OLVColumn)this.objectListViewBenutzer.Columns[1];
this.objectListViewBenutzer.Sort(sortcolumn);
//OLVColumn buttonColumn = new OLVColumn();
//buttonColumn = (OLVColumn)this.objectListViewBenutzer.Columns[10];
//buttonColumn.IsButton = true;
//buttonColumn.ButtonSizing = OLVColumn.ButtonSizingMode.CellBounds;
this.objectListViewBenutzer.FilterMenuBuildStrategy = new MeinFilterMenu();
Funktionen.Columns_Resize(this.objectListViewBenutzer);
}
/// <summary>
/// BUTTON CLICK EVENTS
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonNewUser_Click(object sender, EventArgs e)
{
Benutzer benutzer = new Benutzer();
this.objectListViewBenutzer.AddObject(benutzer);
this.objectListViewBenutzer.RowFormatter = delegate (OLVListItem olvItem) { if (olvItem.Index == 0) olvItem.BackColor = Color.LightYellow; };
this.objectListViewBenutzer.SelectedObject = benutzer;
this.objectListViewBenutzer.FocusedItem = this.objectListViewBenutzer.ModelToItem(benutzer);
this.objectListViewBenutzer.FocusedItem.Selected = true;
this.objectListViewBenutzer.FocusedItem.EnsureVisible();
int firstColumnIndex = 0;
this.objectListViewBenutzer.StartCellEdit((OLVListItem)this.objectListViewBenutzer.FocusedItem, firstColumnIndex);
}
private void buttonAbbrechen_Click(object sender, EventArgs e)
{
this.Close();
}
private void objectListViewBenutzer_CellEditFinished(object sender, CellEditEventArgs e)
{
Benutzer benutzer = (Benutzer)e.RowObject;
if(!string.IsNullOrWhiteSpace(e.NewValue.ToString())) Save_Benutzer(benutzer, false);
}
private void objectListViewBenutzer_SubItemChecking(object sender, SubItemCheckingEventArgs e)
{
Benutzer benutzer = (Benutzer)e.RowObject;
if (benutzer.Aktiv) benutzer.Aktiv = false;
else benutzer.Aktiv = true;
Save_Benutzer(benutzer, false);
}
private void Save_Benutzer(Benutzer benutzer, bool show)
{
if (benutzer.Save() == 1) if (show) meldung.Gespeichert();
else if (show) meldung.Speicherfehler();
}
private void objectListViewBenutzer_SelectedIndexChanged(object sender, EventArgs e)
{
}
}
}