示例#1
0
        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);
        }
示例#2
0
        public static void RefreshVersionList()
        {
            var list = Handler.GetVersions();

            VersionList.Clear();
            foreach (var item in list)
            {
                VersionList.Add(item);
            }
        }
示例#3
0
        public async static Task RefreshVersionListAsync()
        {
            var list = await Handler.GetVersionsAsync();

            VersionList.Clear();
            foreach (var item in list)
            {
                VersionList.Add(item);
            }
        }
示例#4
0
        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);
            }
        }
示例#5
0
        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);
            }
        }