using System;
|
using System.Collections.ObjectModel;
|
using System.Windows.Input;
|
using HMI.Core.Entity;
|
|
namespace HMI.MenuManage.Entity
|
{
|
public class RoleMenuRel : NotifyBase
|
{
|
private event EventHandler<bool> SelectedChanged;
|
|
public string Id { get; set; }
|
public string RoleCode { get; set; }
|
public string RoleName { get; set; }
|
public string MenuCode { get; set; }
|
public string ParentCode { get; set; }
|
public string MenuName { get; set; }
|
public string MenuIcon { get; set; }
|
|
private bool _Selected;
|
public bool Selected
|
{
|
get => _Selected;
|
set
|
{
|
if (_Selected != value)
|
{
|
Set(ref _Selected, value);
|
}
|
}
|
}
|
|
public ICommand CheckCommand
|
{
|
get => new RelayCommand<bool>(ExcuteCheckCommand);
|
}
|
|
private void ExcuteCheckCommand(bool flag)
|
{
|
if (flag && Parent != null) Parent.Selected = flag;
|
foreach (var item in Children)
|
{
|
item.Selected = flag;
|
}
|
}
|
|
|
public RoleMenuRel Parent;
|
|
private ObservableCollection<RoleMenuRel> _Children = new ObservableCollection<RoleMenuRel>();
|
|
public ObservableCollection<RoleMenuRel> Children
|
{
|
get { return _Children; }
|
set { Set(ref _Children, value); }
|
}
|
|
public void AddChild(RoleMenuRel child)
|
{
|
child.Parent = this;
|
Children.Add(child);
|
}
|
}
|
}
|