118 lines
3.3 KiB
C#

using System;
using System.Collections.ObjectModel;
using System.Windows.Media;
using Telerik.Windows.Controls;
namespace SWS.Model
{
public class TreeModel : ViewModelBase, System.ICloneable
{
public string ID { get; set; }
private string _Text;
/// <summary>
/// 节点显示数据
/// </summary>
public string Text
{
get { return _Text; }
set
{
_Text = value;
if (_Text.ToLower().EndsWith(".dwg"))
{
Glyph = "&#xe912;";
}
OnPropertyChanged(nameof(Text));
}
}
/// <summary>
/// 父级节点ID。比如某个目录下有什么文件
/// </summary>
public string parentId { get; set; }
private bool _isexpand;
/// <summary>
/// 控制展开/折叠状态
/// </summary>
public bool isexpand
{
get { return _isexpand; }
set { _isexpand = value; OnPropertyChanged(nameof(isexpand)); }
}
private bool isChecked=false;
/// <summary>
/// 是否选中状态
/// </summary>
public bool IsChecked
{
get { return isChecked; }
set { isChecked = value; OnPropertyChanged(nameof(IsChecked));
}
}
/// <summary>
/// 节点类型
/// </summary>
public string NodeType { get; set; }
string _ToolTipText;
/// <summary>
/// 鼠标悬停提示词
/// </summary>
public string ToolTipText
{
get { return _ToolTipText; }
set { _ToolTipText = value; OnPropertyChanged(nameof(ToolTipText)); }
}
Brush _fontColor = new SolidColorBrush(Colors.White);
/// <summary>
/// 节点字体颜色
/// </summary>
public Brush FontColor
{
get { return _fontColor; }
set { _fontColor = value; OnPropertyChanged(nameof(FontColor)); }
}
/// <summary>
/// 排序
/// </summary>
public int? OrderNo { get; set; }
/// <summary>
/// 状态 0:检入, 1:自己检出, 2:别人检出
/// </summary>
public int CheckInOutStatus { get; set; }
private ObservableCollection<TreeModel> _ChildNodes=new ObservableCollection<TreeModel>();
public ObservableCollection<TreeModel> ChildNodes
{
get { return _ChildNodes; }
set { _ChildNodes = value; RaisePropertyChanged(nameof(ChildNodes)); }
}
/// <summary>
/// 扩展数据。比如具体对象的实体类信息
/// </summary>
public object NodeExtData { get; set; }
string _Glyph = "&#xe900;";
/// <summary>
/// 节点图标
/// </summary>
public string Glyph
{
get { return _Glyph; }
set { _Glyph = value; OnPropertyChanged(nameof(Glyph)); }
}
/// <summary>
/// 克隆实体类
/// </summary>
/// <returns></returns>
public object Clone()
{
return this.MemberwiseClone();
}
}
}