private void RefreshVersions() { if (package == null) { return; } var additionalVersions = AdditionalVersions.ToList(); if (package.KeyVersions.Where(v => v != package.VersionToDisplay).Any(version => Selection.IsSelected(version))) { SetExpandInternal(true); } else if (AdditionalVersions.Any(version => Selection.IsSelected(version))) { SetSeeAllVersions(true); SetExpandInternal(true); } if (!Expander.Expanded) { return; } VersionList.Clear(); var seeAllVersionsClicked = Selection.IsSeeAllVersions(package.VersionToDisplay); var showToolbar = !seeAllVersionsClicked; var versions = seeAllVersionsClicked ? additionalVersions : package.KeyVersions; versions = versions.Where(p => p != package.VersionToDisplay).Reverse(); foreach (var version in versions) { var versionLabel = new PackageVersionLabel(version, Selection); VersionList.Add(versionLabel); } var hasAnyVersion = additionalVersions.Any() || versions.Any(); UIUtils.SetElementDisplay(NoVersions, !hasAnyVersion); UIUtils.SetElementDisplay(SeeAllVersions, hasAnyVersion); UIUtils.SetElementDisplay(VersionToolbar, showToolbar); // TODO: Hard-code until scrollView can size to its content // Note: ListItemMaxHeight is used because there is an issue with VisualElement where at construction time, // styling is not yet applied and max height returns 0 even though the stylesheet has it at 150. var maxHeight = Math.Max(VersionList.style.maxHeight.value.value, ListItemMaxHeight); VersionList.style.minHeight = Math.Min(versions.Count() * ListItemSpacing, maxHeight); // Hack until ScrollList has a better way to do the same -- Vertical scroll bar is not yet visible var maxNumberOfItemBeforeScrollbar = 7; VersionList.EnableClass("hasScrollBar", versions.Count() > maxNumberOfItemBeforeScrollbar); }
public static void RefreshVersionList() { var list = Handler.GetVersions(); VersionList.Clear(); foreach (var item in list) { VersionList.Add(item); } }
public async static Task RefreshVersionListAsync() { var list = await Handler.GetVersionsAsync(); VersionList.Clear(); foreach (var item in list) { VersionList.Add(item); } }
public static void RefreshVersionList() { if (VersionList == null) { VersionList = new ObservableCollection <Version>(); } var list = Handler.GetVersions(); VersionList.Clear(); foreach (var item in list) { VersionList.Add(item); } }
public async static Task RefreshVersionListAsync() { if (VersionList == null) { VersionList = new ObservableCollection <Version>(); } var list = await Handler.GetVersionsAsync(); VersionList.Clear(); foreach (var item in list) { VersionList.Add(item); } }