protected virtual void OnSelectedIdChanged(TagId value) { //Check if (!itemIndex.ContainsKey(value)) { return; } //Begin Update TagList.BeginUpdate(); TagList.Items.Clear(); //Load Path TagList_LoadPath(itemIndex[value].Parent); //Sort TagList.Sort(); //Select foreach (ListViewItem item in TagList.Items) { if (item.Tag is FileSystemItem && ((FileSystemItem)item.Tag).ID == value) { item.Selected = true; TagList.EnsureVisible(item.Index); break; } } //End Update TagList.EndUpdate(); }