using MetroGauges.Model; using netDxf; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Linq; using System.Runtime.CompilerServices; using System.Text; using System.Threading.Tasks; namespace MetroGauges.ViewModel { public class DgViewModel { public DgViewModel() { Items = CreateData(); DataType = DataTypes.KineModel; Color = AciColor.Blue; } public DataTypes DataType { get; set; } //private bool? _isAllItemsSelected; public AciColor Color { get; set; } public string LayerName {get;set;} public ObservableCollection Items { get; set; } //public bool? IsAllItemsSelected //{ // get { return _isAllItemsSelected; } // set // { // if (_isAllItemsSelected == value) return; // _isAllItemsSelected = value; // if (_isAllItemsSelected.HasValue) // SelectAll(_isAllItemsSelected.Value, Items); // OnPropertyChanged(); // } //} //private static void SelectAll(bool select, IEnumerable models) //{ // foreach (var model in models) // { // model.IsSelected = select; // } //} private ObservableCollection CreateData() { return new ObservableCollection { //new CurEquiModel("受电弓","0",0,0) }; } public event PropertyChangedEventHandler PropertyChanged; protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } public IEnumerable StrPositions { get { if (typeof(T) == typeof(KineModel)) { yield return "受电弓"; yield return "车体"; yield return "转向架构架"; yield return "簧下"; yield return "踏面"; yield return "轮缘"; yield return "受流器"; } else if (typeof(T) == typeof(LiEquiModel)) { yield return "受电弓"; yield return "车体顶部"; yield return "车体底架边梁以上"; yield return "车体底架边梁及以下"; yield return "转向架"; yield return "车下轨内吊挂"; yield return "车下轨外吊挂"; yield return "轮对"; //yield return "车下轨内"; //yield return "车下轨外"; } else { yield return "受电弓"; yield return "车体"; yield return "转向架构架"; yield return "受流器"; } } } } }