diff --git a/ENI-2/ENI2/ENI2/App.config b/ENI-2/ENI2/ENI2/App.config index 26bd10f2..f39c4f5a 100644 --- a/ENI-2/ENI2/ENI2/App.config +++ b/ENI-2/ENI2/ENI2/App.config @@ -26,12 +26,12 @@ 1000 - - http://heupferd/bsmd.LockingService/LockingService.svc + http://192.168.2.4/LockingService/LockingService.svc + - - Data Source=(localdb)\Projects;Initial Catalog=nsw;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False + Data Source=192.168.2.12;Initial Catalog=nsw;Uid=dfuser;Pwd=dfpasswd;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False + diff --git a/ENI-2/ENI2/ENI2/DetailBaseControl.cs b/ENI-2/ENI2/ENI2/DetailBaseControl.cs index 758180b4..94467804 100644 --- a/ENI-2/ENI2/ENI2/DetailBaseControl.cs +++ b/ENI-2/ENI2/ENI2/DetailBaseControl.cs @@ -65,6 +65,12 @@ namespace ENI2 /// public event Action NotificationClassChanged; + /// + /// Eine Maske soll neu erzeugt werden weil sich dort "indirekt" etwas geändert hat durch eine Änderung in einer anderen Maske. + /// (Beispiel Copy HAZA nach HAZD Elemente) + /// + public event Action ResetControlCache; + #endregion #region Properties @@ -124,7 +130,12 @@ namespace ENI2 protected virtual void OnRequestReload() { this.RequestReload?.Invoke(); - } + } + + protected virtual void OnControlCacheReset(string messageGroupName) + { + this.ResetControlCache?.Invoke(messageGroupName); + } #region event handling for control content changes (signal dirty etc) diff --git a/ENI-2/ENI2/ENI2/DetailRootControl.xaml.cs b/ENI-2/ENI2/ENI2/DetailRootControl.xaml.cs index b38d5b4c..9547472f 100644 --- a/ENI-2/ENI2/ENI2/DetailRootControl.xaml.cs +++ b/ENI-2/ENI2/ENI2/DetailRootControl.xaml.cs @@ -127,6 +127,7 @@ namespace ENI2 detailControl.RequestReload += DetailControl_RequestReload; detailControl.NotificationClassChanged += DetailControl_NotificationClassChanged; + detailControl.ResetControlCache += DetailControl_ResetControlCache; detailControl.Initialize(); detailControl.IsEnabled = !this.LockedByOtherUser; @@ -160,6 +161,13 @@ namespace ENI2 } } + private void DetailControl_ResetControlCache(string messageGroupName) + { + if (messageGroupName.IsNullOrEmpty()) return; + if (controlCache.ContainsKey(messageGroupName)) + controlCache.Remove(messageGroupName); + } + private void buttonSave_Click(object sender, RoutedEventArgs e) { MessageBoxResult result = MessageBox.Show(Properties.Resources.textQuestionSavePage, Properties.Resources.textConfirmation, diff --git a/ENI-2/ENI2/ENI2/DetailViewControls/ArrivalNotificationDetailControl.xaml b/ENI-2/ENI2/ENI2/DetailViewControls/ArrivalNotificationDetailControl.xaml index 59a2342a..ded673a4 100644 --- a/ENI-2/ENI2/ENI2/DetailViewControls/ArrivalNotificationDetailControl.xaml +++ b/ENI-2/ENI2/ENI2/DetailViewControls/ArrivalNotificationDetailControl.xaml @@ -27,7 +27,7 @@