mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-05-24 13:45:00 +00:00
refactor<*>: rewrite all codes...
This commit is contained in:
parent
89ff8aa744
commit
30ab8ae954
342 changed files with 17208 additions and 19633 deletions
41
src/Views/Controls/TreeItem.cs
Normal file
41
src/Views/Controls/TreeItem.cs
Normal file
|
@ -0,0 +1,41 @@
|
|||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace SourceGit.Views.Controls {
|
||||
|
||||
/// <summary>
|
||||
/// 树节点
|
||||
/// </summary>
|
||||
public class TreeItem : TreeViewItem {
|
||||
|
||||
public static readonly DependencyProperty IsCheckedProperty = DependencyProperty.Register(
|
||||
"IsChecked",
|
||||
typeof(bool),
|
||||
typeof(TreeItem),
|
||||
new PropertyMetadata(false));
|
||||
|
||||
public bool IsChecked {
|
||||
get { return (bool)GetValue(IsCheckedProperty); }
|
||||
set { SetValue(IsCheckedProperty, value); }
|
||||
}
|
||||
|
||||
private int depth = 0;
|
||||
private double indent = 16;
|
||||
|
||||
public TreeItem(int depth, double indent) {
|
||||
this.depth = depth;
|
||||
this.indent = indent;
|
||||
|
||||
Padding = new Thickness(indent * depth, 0, 0, 0);
|
||||
RequestBringIntoView += (o, e) => e.Handled = true;
|
||||
}
|
||||
|
||||
protected override DependencyObject GetContainerForItemOverride() {
|
||||
return new TreeItem(depth + 1, indent);
|
||||
}
|
||||
|
||||
protected override bool IsItemItsOwnContainerOverride(object item) {
|
||||
return item is TreeItem;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue