From e332d3f518c6351ad0f26ef6c4a73c68674d5a28 Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Wed, 9 Mar 2016 21:33:37 +0100 Subject: [PATCH] Make TreeViewItem.IsExpanded a direct property. This allows TreeViewItems to be opened by the mouse! --- src/Perspex.Controls/TreeViewItem.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Perspex.Controls/TreeViewItem.cs b/src/Perspex.Controls/TreeViewItem.cs index d5369840ad..4dd466bd30 100644 --- a/src/Perspex.Controls/TreeViewItem.cs +++ b/src/Perspex.Controls/TreeViewItem.cs @@ -19,8 +19,11 @@ namespace Perspex.Controls /// /// Defines the property. /// - public static readonly StyledProperty IsExpandedProperty = - PerspexProperty.Register("IsExpanded", default(bool), false, Data.BindingMode.TwoWay); + public static readonly DirectProperty IsExpandedProperty = + PerspexProperty.RegisterDirect( + "IsExpanded", + o => o.IsExpanded, + (o, v) => o.IsExpanded = v); /// /// Defines the property. @@ -35,6 +38,7 @@ namespace Perspex.Controls }); private TreeView _treeView; + private bool _isExpanded; /// /// Initializes static members of the class. @@ -51,8 +55,8 @@ namespace Perspex.Controls /// public bool IsExpanded { - get { return GetValue(IsExpandedProperty); } - set { SetValue(IsExpandedProperty, value); } + get { return _isExpanded; } + set { SetAndRaise(IsExpandedProperty, ref _isExpanded, value); } } ///