using System;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Windows;
using Exception = System.Exception;
namespace Saga.PlugIn.Other
{
///
/// WinParameterDic.xaml 的交互逻辑
///
public partial class WinParameterDic : INotifyPropertyChanged
{
public WinParameterDic()
{
InitializeComponent();
CopyRange = CopyParameterValue.AllStr;
ParameterDic = new ObservableCollection();
ParameterDic.Add(new PropertyItem() { Name = "车位编号", Value = "设备本地编码" });
this.DataContext = this;
}
#region Binding
private ObservableCollection m_ParameterDic;
public ObservableCollection ParameterDic
{
get { return m_ParameterDic; }
set
{
m_ParameterDic = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(ParameterDic)));
}
}
private PropertyItem m_SelectItem;
public PropertyItem SelectItem
{
get { return m_SelectItem; }
set
{
m_SelectItem = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(SelectItem)));
}
}
private string m_CopyRange;
public string CopyRange
{
get { return m_CopyRange; }
set
{
m_CopyRange = value;
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(CopyRange)));
}
}
#endregion
public event PropertyChangedEventHandler PropertyChanged;
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
{
try
{
}
catch (Exception exception)
{
Console.WriteLine(exception);
}
this.DialogResult = true;
}
private void BtnAdd_OnClick(object sender, RoutedEventArgs e)
{
var item = ParameterDic.FirstOrDefault(t => t.Name == null && t.Value == null);
if (item == null)
{
item = new PropertyItem();
ParameterDic.Add(item);
}
SelectItem = item;
}
private void BtnDel_OnClick(object sender, RoutedEventArgs e)
{
if (SelectItem != null)
ParameterDic.Remove(SelectItem);
}
}
public class PropertyItem
{
public string Name { get; set; }
public string Value { get; set; }
}
}