You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.7 KiB
58 lines
1.7 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.IO;
|
|
using System.Windows.Input;
|
|
|
|
namespace GummingCommon
|
|
{
|
|
public class ResultRowViewModel : ViewModelBase
|
|
{
|
|
public ResultRowViewModel()
|
|
{
|
|
_relativeObject = new object();
|
|
}
|
|
|
|
private bool _isSelected;
|
|
public bool IsSelected
|
|
{
|
|
get { return _isSelected; }
|
|
set { if (_isSelected == value) return; _isSelected = value; OnPropertyChanged("IsSelected"); if (OnSelectionChanged != null) OnSelectionChanged(this); }
|
|
}
|
|
|
|
private object _relativeObject;
|
|
public object RelativeObject
|
|
{
|
|
get { return _relativeObject; }
|
|
set { if (_relativeObject == value) return; _relativeObject = value; OnPropertyChanged("RelativeObject"); if (OnSelectionChanged != null) OnSelectionChanged(this); }
|
|
}
|
|
|
|
private bool _exist;
|
|
public bool Exist { get { return _exist; } private set { if (_exist == value) return; _exist = value; OnPropertyChanged("Exist"); } }
|
|
|
|
public ICommand SelectCommand { get; private set; }
|
|
|
|
private Dictionary<string, string> _headerDictionary = new Dictionary<string, string>();
|
|
|
|
|
|
public event Action<ResultRowViewModel> OnSelectionChanged;
|
|
|
|
private void OnSelectCommand()
|
|
{
|
|
IsSelected = !IsSelected;
|
|
}
|
|
|
|
public string this[string key]
|
|
{
|
|
get
|
|
{
|
|
string value;
|
|
if (_headerDictionary.TryGetValue(key, out value))
|
|
return value;
|
|
return null;
|
|
}
|
|
}
|
|
}
|
|
}
|