alielie
2025-03-18 a061384ba628a09bf4df91f50321ab22c03129aa
Plugin.TestResult/InfoWindow.xaml.cs
@@ -1,37 +1,20 @@
using Plugin.TestResult_WPF.Model;
using Panuon.WPF.UI;
using Plugin.TestResult_WPF.Model;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Runtime.CompilerServices;
using System.Windows;
namespace Plugin.TestResult_WPF
{
    /// <summary>
    /// InfoWindow.xaml 的交互逻辑
    /// </summary>
    public partial class InfoWindow : Window, INotifyPropertyChanged
    public partial class InfoWindow : WindowX
    {
        #region ...
        public event PropertyChangedEventHandler PropertyChanged;
        public virtual void RaisePropertyChanged(string name)
        {
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
        }
        public void RaiseAndSetIfchanged<T>(ref T old, T @new, [CallerMemberName] string propertyName = null)
        {
            old = @new;
            if (propertyName != null) RaisePropertyChanged(propertyName);
        }
        #endregion
        private string _title;
        public string title
        {
            get => _title;
            set => RaiseAndSetIfchanged(ref _title, value);
            set => Set(ref _title, value);
        }
        private ObservableCollection<Info> _dataSource;
@@ -39,14 +22,15 @@
        public ObservableCollection<Info> dataSource
        {
            get => _dataSource == null ? new ObservableCollection<Info>() : _dataSource;
            set => RaiseAndSetIfchanged(ref _dataSource, value);
            set => Set(ref _dataSource, value);
        }
        public InfoWindow(string title, ObservableCollection<Info> infos)
        {
            this.title = title;
            this.dataSource = infos;
            this.DataContext = this;
            DataContext = this;
            Topmost = false;
            InitializeComponent();
        }