Merge pull request #31 from jdunlap/master

Clearing items in a DarkDropDown does not clear the menu
This commit is contained in:
Robin 2020-08-08 12:34:03 +01:00 committed by GitHub
commit 3f2b9bceb7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 3 deletions

View File

@ -80,6 +80,15 @@ namespace DarkUI.Collections
ItemsRemoved(this, new ObservableListModified<T>(new List<T> { item }));
}
public new void Clear()
{
ObservableListModified<T> removed = new ObservableListModified<T>(this.ToList<T>());
base.Clear();
if (removed.Items.Count() > 0 && ItemsRemoved != null)
ItemsRemoved(this, removed);
}
#endregion
}
}

View File

@ -257,6 +257,12 @@ namespace DarkUI.Controls
}
}
if (e.Action == NotifyCollectionChangedAction.Reset)
{
_menu.Items.Clear();
SelectedItem = null;
}
ResizeMenu();
}

View File

@ -566,6 +566,8 @@ namespace DarkUI.Controls
if (IsDragging)
return;
ContentSize = new Size(0, 0);
if (Nodes.Count == 0)
return;
@ -573,9 +575,7 @@ namespace DarkUI.Controls
var isOdd = false;
var index = 0;
DarkTreeNode prevNode = null;
ContentSize = new Size(0, 0);
for (var i = 0; i <= Nodes.Count - 1; i++)
{
var node = Nodes[i];