Exemplo n.º 1
0
        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);
 }