using System.Reactive.Disposables; using Avalonia; using Avalonia.ReactiveUI; using ReactiveUI; using v2rayN.Desktop.ViewModels; namespace v2rayN.Desktop.Views; /// /// ThemeSettingView.xaml /// public partial class ThemeSettingView : ReactiveUserControl { public ThemeSettingView() { InitializeComponent(); ViewModel = new ThemeSettingViewModel(); cmbCurrentTheme.ItemsSource = Utils.GetEnumNames(); cmbCurrentFontSize.ItemsSource = Enumerable.Range(Global.MinFontSize, 11).ToList(); cmbCurrentLanguage.ItemsSource = Global.Languages; this.WhenActivated(disposables => { this.Bind(ViewModel, vm => vm.CurrentTheme, v => v.cmbCurrentTheme.SelectedValue).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.CurrentFontSize, v => v.cmbCurrentFontSize.SelectedValue).DisposeWith(disposables); this.Bind(ViewModel, vm => vm.CurrentLanguage, v => v.cmbCurrentLanguage.SelectedValue).DisposeWith(disposables); }); } }