using System.Collections.ObjectModel; using System.Linq; namespace AmebaPro3_ControlPanel.ViewModels; public class MainWindowViewModel : ViewModelBase { private PageViewModelBase? _currentPage; private string _selectedDevice = "AmebaPro3 (virtual)"; private string _connectionStatus = "Disconnected"; private string _lastRxTime = "N/A"; private long _rxBytes; private long _txBytes; public MainWindowViewModel() { Pages = new ObservableCollection { new MainPageViewModel(), new JLinkPageViewModel() }; CurrentPage = Pages.FirstOrDefault(); } public ObservableCollection Pages { get; } public PageViewModelBase? CurrentPage { get => _currentPage; set => SetProperty(ref _currentPage, value); } public string SelectedDevice { get => _selectedDevice; set => SetProperty(ref _selectedDevice, value); } public string ConnectionStatus { get => _connectionStatus; set => SetProperty(ref _connectionStatus, value); } public string LastRxTime { get => _lastRxTime; set => SetProperty(ref _lastRxTime, value); } public long RxBytes { get => _rxBytes; set => SetProperty(ref _rxBytes, value); } public long TxBytes { get => _txBytes; set => SetProperty(ref _txBytes, value); } }