// Copyright (c) 2017 schick Informatik // Description: Bearbeitungsmaske STAT // using System.Windows; using bsmd.database; using ENI2.Util; namespace ENI2.DetailViewControls { /// /// Interaction logic for ShipDataDetailControl.xaml /// public partial class ShipDataDetailControl : DetailBaseControl { private Message _statMessage; public ShipDataDetailControl() { InitializeComponent(); Loaded += ShipDataDetailControl_Loaded; } private void ShipDataDetailControl_Loaded(object sender, RoutedEventArgs e) { this.RegisterTextboxChange(this.textBoxVesselName, Message.NotificationClass.STAT); this.RegisterComboboxValueChange(this.comboBoxVesselType, Message.NotificationClass.STAT); this.RegisterComboboxValueChange(this.comboBoxTransportMode, Message.NotificationClass.STAT); this.RegisterComboboxValueChange(this.comboBoxFlag, Message.NotificationClass.STAT); this.RegisterIntegerUpDownChange(this.integerUpDownGrossTonnage, Message.NotificationClass.STAT); this.RegisterDoubleUpDownChange(this.doubleUpDownLength, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxMMSI, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxCallsign, Message.NotificationClass.STAT); this.RegisterLocodeChange(this.locodePortOfRegistry, Message.NotificationClass.STAT); this.RegisterDoubleUpDownChange(this.doubleUpDownBeam, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxInmarsatCallNumber, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxCompanyName, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxStreetNumber, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxPostalCode, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxCountry, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxCompanyId, Message.NotificationClass.STAT); this.RegisterTextboxChange(this.textBoxCity, Message.NotificationClass.STAT); } public override void Initialize() { base.Initialize(); foreach (Message aMessage in this.Messages) { if (aMessage.MessageNotificationClass == Message.NotificationClass.STAT) { this._statMessage = aMessage; this.ControlMessages.Add(aMessage); } } #region STAT if (this._statMessage == null) { this._statMessage = this.Core.CreateMessage(Message.NotificationClass.STAT); this.Messages.Add(this._statMessage); } STAT stat = null; if (this._statMessage.Elements.Count > 0) stat = this._statMessage.Elements[0] as STAT; if (stat == null) { stat = new STAT(); stat.MessageCore = this.Core; stat.MessageHeader = this._statMessage; _statMessage.Elements.Add(stat); } this.comboBoxFlag.ItemsSource = CREW.NationalityDict; //this.comboBoxFlag.KeyUp += ComboBox_KeyUp; this.comboBoxVesselType.ItemsSource = STAT.VesselTypeDict; //this.comboBoxVesselType.KeyUp += ComboBox_KeyUp; this.comboBoxTransportMode.ItemsSource = STAT.TransportModeDict; //this.comboBoxTransportMode.KeyUp += ComboBox_KeyUp; this.shipDataGroupBox.DataContext = stat; #endregion } #region Highlighting public override void HighlightErrorMessageContainer() { if (this._statMessage.HasErrors) { HighlightService.HighlightControl(this.shipDataGroupBox, HighlightService.HighlightStyle.ERROR, this._statMessage); } } public override void HighlightViolationMessageContainer() { if (this._statMessage.HasViolations) HighlightService.HighlightControl(this.shipDataGroupBox, HighlightService.HighlightStyle.VIOLATION, this._statMessage); } #endregion } }