Edit this page

Hybrid ScrollView HtmlHelper Overview

The hybrid ScrollView HtmlHelper extension is a server-side wrapper for the hybrid Kendo UI ScrollView widget.

It allows you to configure the hybrid Kendo UI ScrollView from server-side code.

Configuration

Below are listed the steps for you to follow when configuring the hybrid Kendo UI ScrollView for ASP.NET MVC.

  1. Create a new ASP.NET MVC 4 application. If you have installed the Telerik UI for ASP.NET MVC Visual Studio Extensions, create a Telerik UI for ASP.NET MVC application. If you decide not to use the Telerik UI for ASP.NET MVC Visual Studio Extensions, follow the steps from the introductory article to add Telerik UI for ASP.NET MVC to the application.

  2. Open HomeController.cs and modify the Index action method.

    Example
        public ActionResult Index()
        {
            ViewBag.Message = "Welcome to ASP.NET MVC!";
    
            return View();
        }
    
  3. Add a Kendo UI ScrollView to the Index view. Like most hybrid Kendo UI widgets, the PopOver must be initialized within the hybrid View content.

    Example
    
            <% Html.Kendo().MobileView()
                    .Name("scrollview-home")
                    .Title("Photo Gallery")
                    .Content(() =>
                    {
                        %>
                        <div id="scrollview-container">
                        <%
                        Html.Kendo().MobileScrollView()
                            .Page(2)
                            .Items(items =>
                            {
                                items.Add().HtmlAttributes(new { @class = "photo photo1" });
                                items.Add().HtmlAttributes(new { @class = "photo photo2" });
                                items.Add().HtmlAttributes(new { @class = "photo photo3" });
                                items.Add().HtmlAttributes(new { @class = "photo photo4" });
                                items.Add().HtmlAttributes(new { @class = "photo photo5" });
                                items.Add().HtmlAttributes(new { @class = "photo photo6" });
                                items.Add().HtmlAttributes(new { @class = "photo photo7" });
                                items.Add().HtmlAttributes(new { @class = "photo photo8" });
                                items.Add().HtmlAttributes(new { @class = "photo photo9" });
                                items.Add().HtmlAttributes(new { @class = "photo photo10" });
                            })
                            .FitItemPerPage(true)
                            .Render();
                        %>
                        </div>
                        <%
                    })
                    .Render();
            %>
    
    
            @(Html.Kendo().MobileView()
                    .Name("scrollview-home")
                    .Title("Photo Gallery")
                    .Content(
                        @<text>
                        <div id="scrollview-container">
                        @(Html.Kendo().MobileScrollView()
                            .Page(2)
                            .Items(items =>
                            {
                                items.Add().HtmlAttributes(new { @class = "photo photo1" });
                                items.Add().HtmlAttributes(new { @class = "photo photo2" });
                                items.Add().HtmlAttributes(new { @class = "photo photo3" });
                                items.Add().HtmlAttributes(new { @class = "photo photo4" });
                                items.Add().HtmlAttributes(new { @class = "photo photo5" });
                                items.Add().HtmlAttributes(new { @class = "photo photo6" });
                                items.Add().HtmlAttributes(new { @class = "photo photo7" });
                                items.Add().HtmlAttributes(new { @class = "photo photo8" });
                                items.Add().HtmlAttributes(new { @class = "photo photo9" });
                                items.Add().HtmlAttributes(new { @class = "photo photo10" });
                            })
                            .FitItemPerPage(true))
                        </div>
                    </text>)
            )
    
  4. Initialize the mobile application.

    Example
    
            <%: Html.Kendo().MobileApplication()
                    .ServerNavigation(true)
            %>
    
    
            @(Html.Kendo().MobileApplication()
                .ServerNavigation(true)
            )
    
  5. Build and run the application.

Event Handling

You can subscribe to all hybrid ScrollView events.

By Handler Name

The following example demonstrates how to subscribe to events by a handler name.

Example

         <%: Html.Kendo().MobileScrollView()
                  .Name("scrollView")
                  .Items(items =>
                  {
                      items.Add().HtmlAttributes(new { @class = "photo photo1" });
                      items.Add().HtmlAttributes(new { @class = "photo photo2" });
                  })
                  .Events(events => events
                      .Change("onChange")
                  )
                  .FitItemPerPage(true)
          %>

          <script>
          function onChange() {
              //Handle the change event
          }
          </script>

          @(Html.Kendo().MobileScrollView()
              .Name("scrollView")
              .Items(items =>
              {
                  items.Add().HtmlAttributes(new { @class = "photo photo1" });
                  items.Add().HtmlAttributes(new { @class = "photo photo2" });
              })
              .Events(events => events
                  .Change("onChange")
              )
              .FitItemPerPage(true))

          <script>
          function onChange() {
              //Handle the change event
          }
          </script>

Reference

Instances

You can reference a hybrid ScrollView instance by using the code from the example below. Once a reference is established, use the hybrid ScrollView API to control its behavior.

Example
    @(Html.Kendo().MobileScrollView()
            .Name("scrollView")
            .Items(items =>
            {
                items.Add().HtmlAttributes(new { @class = "photo photo1" });
                items.Add().HtmlAttributes(new { @class = "photo photo2" });
            })
            .FitItemPerPage(true))
    <script>
    $(function() {
        // Notice that the Name() of the scrollview is used to get its client-side instance
        var scrollview = $("#scrollView").data("kendoMobileScrollView");
    });
    </script>

See Also