using LDBproject.Repositories; using Unity; namespace LDBproject.AdditionalForms; public partial class OrdersF : Form { private readonly IUnityContainer _container; private readonly IOrderRep _regR; public OrdersF(IUnityContainer container, IOrderRep regR) { InitializeComponent(); _regR = regR ?? throw new ArgumentNullException(nameof(regR)); _container = container ?? throw new ArgumentNullException(nameof(container)); } private void RegistrationsF_Load(object sender, EventArgs e) { try { ReloadList(); } catch (Exception ex) { MessageBox.Show(ex.Message, "[ Error while saving ]", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void AddBtn_Click(object sender, EventArgs e) { try { _container.Resolve().ShowDialog(); ReloadList(); } catch (Exception ex) { MessageBox.Show(ex.Message, "[ Error while adding element ]", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void DelBtn_Click(object sender, EventArgs e) { if (!GetIDFromRow(out var foundID)) { return; } if (MessageBox.Show("Remove element?", "Deleting", MessageBoxButtons.YesNo) != DialogResult.Yes) { return; } try { _regR.DeleteOrderinfo(foundID); ReloadList(); } catch (Exception ex) { MessageBox.Show(ex.Message, "[ Error while removing element ]", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void ReloadList() => DataGV.DataSource = _regR.GetOrdersInfo(); private bool GetIDFromRow(out int id) { id = 0; if (DataGV.SelectedRows.Count < 1) { MessageBox.Show("[ Error : element doesn't exist ]", "", MessageBoxButtons.OK, MessageBoxIcon.Error); } id = Convert.ToInt32(DataGV.SelectedRows[0].Cells["OrderID"].Value); return true; } }