using System.Collections.Generic; using System.Globalization; using System.Linq; using GalaSoft.MvvmLight; using GalaSoft.MvvmLight.Command; using HandyControl.Controls; using HandyControlDemo.Properties.Langs; using HandyControlDemo.Tools.Converter; namespace HandyControlDemo.ViewModel; public class InputElementDemoViewModel : ViewModelBase { private string _email1; private string _email2; private string _text1; private string _text2; private double _doubleValue1; private double _doubleValue2; private IList _dataList; private IList _selectedDataList; public string Email1 { get => _email1; #if NET40 set => Set(nameof(Email1), ref _email1, value); #else set => Set(ref _email1, value); #endif } public string Email2 { get => _email2; #if NET40 set => Set(nameof(Email2), ref _email2, value); #else set => Set(ref _email2, value); #endif } public string Text1 { get => _text1; #if NET40 set => Set(nameof(Text1), ref _text1, value); #else set => Set(ref _text1, value); #endif } public string Text2 { get => _text2; #if NET40 set => Set(nameof(Text2), ref _text2, value); #else set => Set(ref _text2, value); #endif } public double DoubleValue1 { get => _doubleValue1; #if NET40 set => Set(nameof(DoubleValue1), ref _doubleValue1, value); #else set => Set(ref _doubleValue1, value); #endif } public double DoubleValue2 { get => _doubleValue2; #if NET40 set => Set(nameof(DoubleValue2), ref _doubleValue2, value); #else set => Set(ref _doubleValue2, value); #endif } public IList DataList { get => _dataList; #if NET40 set => Set(nameof(DataList), ref _dataList, value); #else set => Set(ref _dataList, value); #endif } public IList SelectedDataList { get => _selectedDataList; #if NET40 set => Set(nameof(SelectedDataList), ref _selectedDataList, value); #else set => Set(ref _selectedDataList, value); #endif } public RelayCommand SearchCmd => new(Search); public InputElementDemoViewModel() { DataList = GetComboBoxDemoDataList(); SelectedDataList = DataList.Where((t, i) => i % 2 == 0).ToList(); } private static void Search(string key) { Growl.Info(key); } private static List GetComboBoxDemoDataList() { var converter = new StringRepeatConverter(); var list = new List(); for (var i = 1; i <= 9; i++) { list.Add($"{converter.Convert(Lang.Text, null, i, CultureInfo.CurrentCulture)}{i}"); } return list; } }