private void UpdateControl() { if (!string.IsNullOrEmpty(Author)) { _textBlockAuthor.Text = string.Format( CultureInfo.CurrentCulture, Resx.Text_ByAuthor, Author); _textBlockAuthor.Visibility = Visibility.Visible; } else { _textBlockAuthor.Visibility = Visibility.Collapsed; } // Generate the textbox for download count. _textBlockDownloadCount.Inlines.Clear(); if (DownloadCount.HasValue && DownloadCount.Value > 0) { // Processing the format string ourselves. We only support "{0}". var formatString = Resx.Text_Downloads; string begin = string.Empty; string end = string.Empty; var index = formatString.IndexOf("{0}"); if (index == -1) { // Cannot find "{0}". Debug.Fail("Label_ConsiderUsing does not contain {0}"); begin = formatString; } else { begin = formatString.Substring(0, index); end = formatString.Substring(index + "{0}".Length); } _textBlockDownloadCount.Inlines.Add(new Run(begin)); _textBlockDownloadCount.Inlines.Add( new Run(UIUtility.NumberToString(DownloadCount.Value, CultureInfo.CurrentCulture)) { FontWeight = FontWeights.Bold }); _textBlockDownloadCount.Inlines.Add(new Run(end)); _textBlockDownloadCount.Visibility = Visibility.Visible; } else { _textBlockDownloadCount.Visibility = Visibility.Collapsed; } // set the visiblity of the separator. if (_textBlockAuthor.Visibility == Visibility.Visible && _textBlockDownloadCount.Visibility == Visibility.Visible) { _separator.Visibility = Visibility.Visible; } else { _separator.Visibility = Visibility.Collapsed; } // set the visibility of the control itself. if (_textBlockAuthor.Visibility == Visibility.Collapsed && _textBlockDownloadCount.Visibility == Visibility.Collapsed) { _self.Visibility = Visibility.Collapsed; } else { _self.Visibility = Visibility.Visible; } }
public void LaunchExternalLink(Uri url) { UIUtility.LaunchExternalLink(url); }
private void SolutionUninstallButtonClicked(object sender, EventArgs e) { var model = (PackageSolutionDetailControlModel)DataContext; if (model != null) { var userAction = UserAction.CreateUnInstallAction(model.Id, Control.Model.IsSolution, UIUtility.ToContractsItemFilter(Control._topPanel.Filter)); ExecuteUserAction(userAction, NuGetActionType.Uninstall); } }