using System.ComponentModel; using System.Windows; using XP.Hardware.PLC.ViewModels; namespace XP.Hardware.PLC.Views { /// /// PLC 信号地址定义编辑器窗口 Code-Behind | PLC Signal Address Config Editor Window Code-Behind /// public partial class PlcAddrConfigEditorWindow : Window { private readonly PlcAddrConfigEditorViewModel _viewModel; /// /// 构造函数 | Constructor /// /// 编辑器 ViewModel | Editor ViewModel public PlcAddrConfigEditorWindow(PlcAddrConfigEditorViewModel viewModel) { InitializeComponent(); _viewModel = viewModel; DataContext = _viewModel; // 绑定窗口关闭回调 | Bind window close action _viewModel.CloseAction = () => Close(); // 继承主窗口图标 | Inherit main window icon if (Application.Current?.MainWindow != null) { Icon = Application.Current.MainWindow.Icon; } } /// /// 窗口关闭时执行取消命令 | Execute cancel command on window closing /// protected override void OnClosing(CancelEventArgs e) { base.OnClosing(e); } } }