35 lines
1.1 KiB
C#
35 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
using System.Linq;
|
|
using System.Text;
|
|
|
|
namespace JD.Interfaces.Models
|
|
{
|
|
/// <summary>
|
|
/// Interface representing the data behind a tree view item.
|
|
/// </summary>
|
|
public interface ITreeViewItemData
|
|
{
|
|
ObservableCollection<ITreeViewItemData> Children { get; }
|
|
bool HasChildren { get; }
|
|
bool IsExpanded { get; set; }
|
|
bool IsSelected { get; set; }
|
|
bool IsFiltered { get; }
|
|
ITreeViewItemData Parent { get; }
|
|
ITreeViewItemData Root { get; }
|
|
|
|
IEnumerable<ITreeViewItemData> SelectedItems { get; }
|
|
|
|
event EventHandler ExpandedChanged;
|
|
event EventHandler SelectedChanged;
|
|
|
|
// For use in a TreeList.
|
|
int Level { get; }
|
|
IList<ITreeViewItemData> GetAllChildren();
|
|
ITreeViewItemData GetNextItem();
|
|
ITreeViewItemData GetPreviousItem();
|
|
ITreeViewItemData GetFirstChild(bool onlyNotFiltered);
|
|
bool HasItemForParent(ITreeViewItemData potentialParentItem);
|
|
}
|
|
}
|