private void ViewerGrid_RowEditEnding(object sender, System.Windows.Controls.DataGridRowEditEndingEventArgs e) { // Save changes and tell other viewers about the change int currow = 0; currow = this.BankGrid.SelectedIndex; // Save current row so we can reposition correctly at end of the entire refresh process Flags.SqlBankCurrentIndex = currow; BankAccountViewModel ss = new BankAccountViewModel(); ss = this.BankGrid.SelectedItem as BankAccountViewModel; // This is the NEW DATA from the current row SQLHandlers sqlh = new SQLHandlers(); sqlh.UpdateDbRowAsync("BANKACCOUNT", ss, this.BankGrid.SelectedIndex); this.BankGrid.SelectedIndex = Flags.SqlBankCurrentIndex; this.BankGrid.ScrollIntoView(Flags.SqlBankCurrentIndex); // Notify EditDb to upgrade its grid if (Flags.CurrentEditDbViewer != null) { Flags.CurrentEditDbViewer.UpdateGrid("BANKACCOUNT"); } // *********** DEFINITE WIN ********** // This DOES trigger a notidfication to SQLDBVIEWER for sure !!! 14/5/21 EventControl.TriggerViewerDataChanged(2, this.BankGrid.SelectedIndex, "BANKACCOUNT"); }
//**************************************************************************************************************************************************************// private static async Task <bool> LoadCustomerCollection(bool Notify = true) { int count = 0; try { for (int i = 0; i < dtCust.Rows.Count; i++) { Custinternalcollection.Add(new CustomerViewModel { Id = Convert.ToInt32(dtCust.Rows [i] [0]), CustNo = dtCust.Rows [i] [1].ToString( ), BankNo = dtCust.Rows [i] [2].ToString( ), AcType = Convert.ToInt32(dtCust.Rows [i] [3]), FName = dtCust.Rows [i] [4].ToString( ), LName = dtCust.Rows [i] [5].ToString( ), Addr1 = dtCust.Rows [i] [6].ToString( ), Addr2 = dtCust.Rows [i] [7].ToString( ), Town = dtCust.Rows [i] [8].ToString( ), County = dtCust.Rows [i] [9].ToString( ), PCode = dtCust.Rows [i] [10].ToString( ), Phone = dtCust.Rows [i] [11].ToString( ), Mobile = dtCust.Rows [i] [12].ToString( ), Dob = Convert.ToDateTime(dtCust.Rows [i] [13]), ODate = Convert.ToDateTime(dtCust.Rows [i] [14]), CDate = Convert.ToDateTime(dtCust.Rows [i] [15]) }); count = i; } } catch (Exception ex) { Console.WriteLine($"CUSTOMERS : ERROR {ex . Message} + {ex . Data} ...."); MessageBox.Show($"CUSTOMERS : ERROR :\n Error was : [{ex . Message}] ...."); } if (Notify) { EventControl.TriggerCustDataLoaded(null, new LoadedEventArgs { CallerDb = "CUSTOMER", DataSource = Custinternalcollection, RowCount = Custinternalcollection.Count }); } Flags.CustCollection = Custinternalcollection; return(true); }
private async Task <bool> SaveButton(object sender = null, RoutedEventArgs e = null) { //inprogress = true; //bindex = this . BankGrid . SelectedIndex; //cindex = this . CustomerGrid . SelectedIndex; //dindex = this . DetailsGrid . SelectedIndex; // Get the current rows data IsDirty = false; int CurrentSelection = this.BankGrid.SelectedIndex; this.BankGrid.SelectedItem = this.BankGrid.SelectedIndex; BankAccountViewModel bvm = new BankAccountViewModel(); bvm = this.BankGrid.SelectedItem as BankAccountViewModel; SaveFieldData( ); // update the current rows data content to send to Update process bvm.BankNo = Bankno.Text; bvm.CustNo = Custno.Text; bvm.AcType = Convert.ToInt32(acType.Text); bvm.Balance = Convert.ToDecimal(balance.Text); bvm.ODate = Convert.ToDateTime(odate.Text); bvm.CDate = Convert.ToDateTime(cdate.Text); // Call Handler to update ALL Db's via SQL SQLHandlers sqlh = new SQLHandlers(); await sqlh.UpdateDbRow("BANKACCOUNT", bvm); EventControl.TriggerBankDataLoaded(BankViewercollection, new LoadedEventArgs { CallerDb = "BANKACCOUNT", DataSource = BankViewercollection, RowCount = this.BankGrid.SelectedIndex }); //Gotta reload our data because the update clears it down totally to null this.BankGrid.SelectedIndex = CurrentSelection; this.BankGrid.SelectedItem = CurrentSelection; this.BankGrid.Refresh( ); SaveBttn.IsEnabled = false; return(true); }
public async static Task <bool> LoadBankCollection(bool Notify = false) { int count = 0; try { BankCollection bc = new BankCollection( ); for (int i = 0; i < dtBank.Rows.Count; i++) { Bankinternalcollection.Add(new BankAccountViewModel { Id = Convert.ToInt32(dtBank.Rows [i] [0]), BankNo = dtBank.Rows [i] [1].ToString( ), CustNo = dtBank.Rows [i] [2].ToString( ), AcType = Convert.ToInt32(dtBank.Rows [i] [3]), Balance = Convert.ToDecimal(dtBank.Rows [i] [4]), IntRate = Convert.ToDecimal(dtBank.Rows [i] [5]), ODate = Convert.ToDateTime(dtBank.Rows [i] [6]), CDate = Convert.ToDateTime(dtBank.Rows [i] [7]), }); count = i; } } catch (Exception ex) { Console.WriteLine($"BANK : SQL Error in BankCollection load function : {ex . Message}, {ex . Data}"); MessageBox.Show($"BANK : SQL Error in BankCollection load function : {ex . Message}, {ex . Data}"); } finally { BankCollection bc = new BankCollection( ); if (Notify) { EventControl.TriggerBankDataLoaded(null, new LoadedEventArgs { CallerDb = "BankAccount", DataSource = bc, RowCount = Bankinternalcollection.Count }); } } // Flags . BankCollection = Bankcollection; return(true); }
//**************************************************************************************************************************************************************// public static async Task <DetCollection> LoadDetCollection(int row, bool Notify = true) { int count = 0; try { for (int i = 0; i < dtDetails.Rows.Count; i++) { Detinternalcollection.Add(new DetailsViewModel { Id = Convert.ToInt32(dtDetails.Rows [i] [0]), BankNo = dtDetails.Rows [i] [1].ToString( ), CustNo = dtDetails.Rows [i] [2].ToString( ), AcType = Convert.ToInt32(dtDetails.Rows [i] [3]), Balance = Convert.ToDecimal(dtDetails.Rows [i] [4]), IntRate = Convert.ToDecimal(dtDetails.Rows [i] [5]), ODate = Convert.ToDateTime(dtDetails.Rows [i] [6]), CDate = Convert.ToDateTime(dtDetails.Rows [i] [7]) }); count = i; } Console.WriteLine($"DETAILS : Sql data loaded into Details ObservableCollection \"DetCollection\" [{count}] ...."); if (Notify) { // OnDetDataLoaded ( Detcollection , row ); EventControl.TriggerDetDataLoaded(null, new LoadedEventArgs { CallerDb = "DETAILS", DataSource = Detinternalcollection, RowCount = Detinternalcollection.Count }); } Flags.DetCollection = Detinternalcollection; return(Detinternalcollection); } catch (Exception ex) { Console.WriteLine($"DETAILS : ERROR in LoadDetCollection() : loading Details into ObservableCollection \"DetCollection\" : [{ex . Message}] : {ex . Data} ...."); MessageBox.Show($"DETAILS : ERROR in LoadDetCollection() : loading Details into ObservableCollection \"DetCollection\" : [{ex . Message}] : {ex . Data} ...."); return(null); } }
public static void ShowSubscribersCount( ) { int count = -1; int count2 = -1; int count3 = -1; int count4 = -1; int count5 = -1; int count6 = -1; int count7 = -1; int count8 = -1; int count9 = -1; int count10 = -1; int count11 = -1; if (!BankAccountViewModel.ShowSubscribeData) { return; } //ViewerDataHasBeenChanged Delegate [] dg = EventControl.GetEventCount( ); if (dg != null) { count = dg.Length; } // NotifyOfDataChange dg = EventControl.GetEventCount2( ); if (dg != null) { count2 = dg.Length; } // NotifyOfDataLoaded dg = EventControl.GetEventCount3( ); if (dg != null) { count3 = dg.Length; } // DetCollection. BankDataLoaded dg = EventControl.GetEventCount6( ); if (dg != null) { count6 = dg.Length; } // CustCollection. CustDataLoaded dg = EventControl.GetEventCount7( ); if (dg != null) { count7 = dg.Length; } // CustCollection. DetDataLoaded dg = EventControl.GetEventCount8( ); if (dg != null) { count8 = dg.Length; } //SQLHandlers. DataUpdated dg = EditDb.GetEventCount9( ); if (dg != null) { count9 = dg.Length; } //AllViewersUpdate dg = EditDb.GetEventCount9( ); if (dg != null) { count10 = dg.Length; } //RecordDeleted dg = EventControl.GetEventCount11( ); if (dg != null) { count11 = dg.Length; } Console.WriteLine($"\n *** Currently Subscribed Events ***"); if (count < 0) { Console.WriteLine($"ViewerDataHasBeenChanged= "); } else { Console.WriteLine($"ViewerDataHasBeenChanged = {count} "); } if (count2 < 0) { Console.WriteLine($"NotifyOfDataChange = "); } else { Console.WriteLine($"NotifyOfDataChange = {count2}"); } if (count3 < 0) { Console.WriteLine($"NotifyOfDataLoaded = "); } else { Console.WriteLine($"NotifyOfDataLoaded = {count3}"); } if (count6 < 0) { Console.WriteLine($"BankCollection. BankDataLoaded = "); } else { Console.WriteLine($"BankCollection. BankDataLoaded = {count6}"); } if (count7 < 0) { Console.WriteLine($"CustCollection. CustDataLoaded = "); } else { Console.WriteLine($"CustCollection. CustDataLoaded = {count7}"); } if (count8 < 0) { Console.WriteLine($"DetCollection. DetDataLoaded = "); } else { Console.WriteLine($"DetCollection. DetDataLoaded = {count8}"); } if (count9 < 0) { Console.WriteLine($"SQLHandler.DataUpdated = "); } else { Console.WriteLine($"SQLHandler.DataUpdated = {count9}"); } if (count10 < 0) { Console.WriteLine($"DbEdit.AllViewersUpdate = "); } else { Console.WriteLine($"DbEdit.AllViewersUpdate = {count10}"); } if (count11 < 0) { Console.WriteLine($"RecordDeleted = "); } else { Console.WriteLine($"RecordDeleted = {count11}"); } bool first = true; Delegate [] dglist2 = EventControl.GetEventCount( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } //item . CurrentDb; Console.WriteLine($"Delegate : VIEWERDATAHASBEENCHANGED :\n >>> {item . Target}\nMethod = {item . Method . Name . ToString ( )}"); cnt++; } } dglist2 = EventControl.GetEventCount2( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } first = true; Console.WriteLine($"====================================================================================="); foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } Console.WriteLine($"Delegate : NOTIFYOFDATACHANGE : \n >>> {item . Target . ToString ( )}\nMethod = {item . Method . ToString ( )}"); cnt++; } } dglist2 = EventControl.GetEventCount3( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } first = true; Console.WriteLine($"====================================================================================="); foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } Console.WriteLine($"Delegate : NOTIFYOFDATALOADED: \n >>> {item . Target . ToString ( )}\nMethod = {item . Method . ToString ( )}"); cnt++; } } dglist2 = EventControl.GetEventCount6( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } if (item.Target != null) { Console.WriteLine($"Delegate : BankCollection. BANKDATALOADED:\n >>> {item . Target?.ToString ( )}\nMethod = {item . Method . ToString ( )}"); } else { Console.WriteLine($"Delegate : BankCollection. BANKDATALOADED:\n >>> \nMethod = {item . Method . ToString ( )}"); } cnt++; } } dglist2 = EventControl.GetEventCount7( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } if (item.Target != null) { Console.WriteLine($"Delegate : CustCollection. CUSTDATALOADED:\n >>> {item . Target?.ToString ( )}\nMethod = {item . Method . ToString ( )}"); } else { Console.WriteLine($"Delegate : CustCollection. CUSTDATALOADED:\n >>> \nMethod = {item . Method . ToString ( )}"); } cnt++; } } dglist2 = EventControl.GetEventCount8( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } if (item.Target != null) { Console.WriteLine($"Delegate : DetCollection. DETDATALOADED:\n >>> {item . Target?.ToString ( )}\nMethod = {item . Method . ToString ( )}"); } else { Console.WriteLine($"Delegate : DetCollection. DETDATALOADED:\n >>> \nMethod = {item . Method . ToString ( )}"); } cnt++; } } dglist2 = EditDb.GetEventCount9( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } if (item.Target != null) { Console.WriteLine($"Delegate : SQLHandlers.DATAUPDATED:\n >>> {item . Target?.ToString ( )}\nMethod = {item . Method . ToString ( )}"); } else { Console.WriteLine($"Delegate : SQLHandlers.DATAUPDATED::\n >>> \nMethod = {item . Method . ToString ( )}"); } cnt++; } } dglist2 = EditDb.GetEventCount10( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } if (item.Target != null) { Console.WriteLine($"Delegate : DbEdit.ALLVIEWERSUPDATE :\n >>> {item . Target?.ToString ( )}\nMethod = {item . Method . ToString ( )}"); } else { Console.WriteLine($"Delegate : DbEdit.ALLVIEWERSUPDATE :\n >>> \nMethod = {item . Method . ToString ( )}"); } cnt++; } } dglist2 = EventControl.GetEventCount11( ); if (dglist2 != null) { int cnt = 0; if (!first) { Console.WriteLine($"====================================================================================="); first = false; } Console.WriteLine($"====================================================================================="); first = true; foreach (var item in dglist2) { if (cnt > 0) { Console.WriteLine( ); } if (item.Target != null) { Console.WriteLine($"Delegate : RECORDDELETED:\n >>> {item . Target?.ToString ( )}\nMethod = {item . Method . ToString ( )}"); } else { Console.WriteLine($"Delegate : RECORDDELETED:\n >>> \nMethod = {item . Method . ToString ( )}"); } cnt++; } } Console.WriteLine($"+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"); }