public static MvcHtmlString Pager(this HtmlHelper html, IPaginatedListModel paginatedListModel) { int totalPages = CalcTotalPages(paginatedListModel.Total, paginatedListModel.PageSize); int previousPage = CalcPreviousPage(paginatedListModel.Page); int nextPage = CalcNextPage(paginatedListModel.Page, totalPages); int lowerBound = CalcLowerBound(paginatedListModel.Page, 10, totalPages); int upperBound = CalcUpperBound(paginatedListModel.Page, 10, totalPages); var result = new StringBuilder("<ul class=\"pagination\">"); if (paginatedListModel.Total != 0) { //// Show first //html.CreateButton(result, "|<", 1, paginatedListModel.Page == 1); // Show previous html.CreateButton(result, "Prev", previousPage, paginatedListModel.Page == 1); for (int i = lowerBound; i <= upperBound; i++) { if (i == paginatedListModel.Page) { html.CreateCurrentButton(result, i.ToString()); } else { html.CreateButton(result, i.ToString(), i); } } // Show next html.CreateButton(result, "Next", nextPage, paginatedListModel.Page == totalPages); //// Show last //html.CreateButton(result, ">|", totalPages, paginatedListModel.Page == totalPages); } result.Append("</ul>"); return MvcHtmlString.Create(result.ToString()); }
public static UIBarButtonItem CreateButtonForToolbar(this ToolBarButton toolBarButton) { if (toolBarButton.ImageSource == null) return toolBarButton.CreateButton(); var uiButton = new UIButton(UIButtonType.Custom); SetImage(uiButton, toolBarButton.ImageSource); uiButton.Frame = new CGRect (0, 0, 24, 24); var barButtonItem = new UIBarButtonItem (uiButton); uiButton.TouchUpInside += (sender, e) => HandleButtonClick(toolBarButton); WireUpEnabledToCanExecute(toolBarButton, barButtonItem); toolBarButton.PropertyChanged += (s, e) => { if (e.PropertyNameMatches(() => toolBarButton.Command)) barButtonItem.InvokeOnMainThread(() => WireUpEnabledToCanExecute(toolBarButton, barButtonItem)); }; return barButtonItem; }
/// <summary> /// Creates an <see cref="IButton"/> implementation that can be used to /// control a single button on a web page. /// </summary> /// <param name="driver"> /// The <see cref="IBrowserDriver"/> to use. /// </param> /// <param name="id"> /// The ID attribute of the button on the web page. /// </param> public static IButton CreateButton(this IBrowserDriver driver, string id) { return driver.CreateButton().FromID(id); }