using Avalonia.Controls; using Avalonia.Interactivity; using Avalonia.Media; using ZB.MOM.WW.OtOpcUa.Client.Shared.Models; using ZB.MOM.WW.OtOpcUa.Client.UI.ViewModels; namespace ZB.MOM.WW.OtOpcUa.Client.UI.Views; public partial class ShelveAlarmWindow : Window { private readonly AlarmsViewModel _alarmsVm; private readonly AlarmEventViewModel _alarm; /// Designer ctor. public ShelveAlarmWindow() { InitializeComponent(); _alarmsVm = null!; _alarm = null!; } /// Creates the shelve dialog for an alarm. public ShelveAlarmWindow(AlarmsViewModel alarmsVm, AlarmEventViewModel alarm) { InitializeComponent(); _alarmsVm = alarmsVm; _alarm = alarm; var sourceText = this.FindControl("SourceText"); if (sourceText != null) sourceText.Text = alarm.SourceName; var conditionText = this.FindControl("ConditionText"); if (conditionText != null) conditionText.Text = $"{alarm.ConditionName} (Severity: {alarm.Severity})"; var kindCombo = this.FindControl("KindCombo"); if (kindCombo != null) kindCombo.SelectionChanged += OnKindChanged; var shelveButton = this.FindControl