News Ticker

Menu

Responsive Multi Item Slider with jQuery in Asp.net

(Responsive Multi Item Slider with CSS Animations and jQuery in Asp.net) –Bài viết dưới đây sẽ hướng dẫn các bạn cách tạo Slider dạng nhóm.


Code Example C#, Code Example VB.NET
Code Example C#, Code Example VB.NET



- B1: Tạo CSDL Customers trong SQL Server

- B2: Tạo các bảng dữ liệu: Categories, Products và có cấu trúc sau



- B3: Nhập dữ liệu cho bảng Categories Products

- B4: Tạo Project trong Microsoft Visual Studio 2010

- B5: Download thư viện tại đây

- B6: Giải nén,  copy file jquery.catslider.js và modernizr.custom.63321.js vào thư mục Js

- B7: Copy file demo.css và style.css vào thư mục Styles

- B8: Download Script SQL tại đây.

B9: Mở file Site.Master dạng HTML và bổ xung đoạn mã phía dưới trong thẻ Head
<head runat="server">
<title>Responsive Multi Item Slider in Asp.net</title>
<link href="Styles/Site.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="Styles/style.css" />
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" />
<link href='http://fonts.googleapis.com/css?family=PT+Sans:400,700' rel='stylesheet' type='text/css'>
<script src="js/modernizr.custom.63321.js"></script>
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
</head>

B10: Mở file Default.aspx dưới dạng HTML và  nhập mã HTML
C# Code
<%@ Page Title="Responsive Multi Item Slider in Asp.net" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ResponsiveMultiItemSlider._Default" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <div class="panel panel-default">
        <div class="panel-heading">
            <h3>Responsive Multi Item Slider in Asp.net</h3>
        </div>
        <div class="panel-body">
            <div class="main">
                         <div id="mi-slider" class="mi-slider">
                    <asp:Repeater ID="rptSlider" OnItemDataBound="rptSlider_ItemDataBound" runat="server">
                        <ItemTemplate>
                            <ul>
                                <asp:Repeater ID="rptSubSlider" runat="server">
                                    <ItemTemplate>
                                        <li><a href='<%# Eval("URL")%>'><image src='<%# Eval("ImageURL")%>'></image><h4><%# Eval("ProductName")%></h4></a></li>
                                        <asp:Literal ID="ltItem" runat="server"></asp:Literal>
                                    </ItemTemplate>
                                </asp:Repeater>
                            </ul>
                        </ItemTemplate>
                    </asp:Repeater>
                               <nav>
                        <asp:Repeater ID="rptNav" OnItemDataBound="rptNav_ItemDataBound" runat="server">
                            <ItemTemplate>
                                <asp:Literal ID="ltItem" runat="server"></asp:Literal>
                            </ItemTemplate>
                        </asp:Repeater>
                               </nav>
                         </div>
                  </div>
        </div>
    </div>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
       <script type="text/javascript" src="js/jquery.catslider.js"></script>
       <script type="text/javascript">
           $(function () {
               $('#mi-slider').catslider();
           });
       </script>
</asp:Content>
VB.NET Code
<%@ Page Title="Responsive Multi Item Slider in Asp.net" Language="vb" MasterPageFile="~/Site.Master" AutoEventWireup="false" CodeBehind="Default.aspx.vb" Inherits="ResponsiveMultiItemSlider._Default" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <div class="panel panel-default">
        <div class="panel-heading">
            <h3>Responsive Multi Item Slider in Asp.net</h3>
        </div>
        <div class="panel-body">
            <div class="main">
                         <div id="mi-slider" class="mi-slider">
                    <asp:Repeater ID="rptSlider" runat="server">
                        <ItemTemplate>
                            <ul>
                                <asp:Repeater ID="rptSubSlider" runat="server">
                                    <ItemTemplate>
                                        <li><a href='<%# Eval("URL")%>'><image src='<%# Eval("ImageURL")%>'></image><h4><%# Eval("ProductName")%></h4></a></li>
                                        <asp:Literal ID="ltItem" runat="server"></asp:Literal>
                                    </ItemTemplate>
                                </asp:Repeater>
                            </ul>
                        </ItemTemplate>
                    </asp:Repeater>
                               <nav>
                        <asp:Repeater ID="rptNav" runat="server">
                            <ItemTemplate>
                                <asp:Literal ID="ltItem" runat="server"></asp:Literal>
                            </ItemTemplate>
                        </asp:Repeater>
                               </nav>
                         </div>
                  </div>
        </div>
    </div>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
       <script type="text/javascript" src="js/jquery.catslider.js"></script>
       <script type="text/javascript">
              $(function () {
                  $('#mi-slider').catslider();
              });
       </script>
</asp:Content>

B11: Viết Code cho file Default.aspx
C# Code
//Visit http://www.laptrinhdotnet.com for more ASP.NET Tutorials
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace ResponsiveMultiItemSlider
{
    public partial class _Default : System.Web.UI.Page
    {
        #region "Bind Data"

        private DataTable BindSlider(int CategoryID)
        {
            SqlDataProvider objSQL = new SqlDataProvider();
            DataTable objBind = default(DataTable);
            objBind = objSQL.FillTable("Select * from Products Where CategoryID=" + CategoryID);
            return objBind;
        }

        private void BindDataNav()
        {
            SqlDataProvider objSQL = new SqlDataProvider();
            DataTable objBind = default(DataTable);
            objBind = objSQL.FillTable("Select * from Categories");
            rptNav.DataSource = objBind;
            rptNav.DataBind();
            rptSlider.DataSource = objBind;
            rptSlider.DataBind();
        }

        #endregion

        #region "Repeater Methods"

        protected void rptNav_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item | e.Item.ItemType == ListItemType.AlternatingItem)
            {
                string ItemName = DataBinder.Eval(e.Item.DataItem, "CategoryName").ToString();
                Literal ltItem = (Literal)e.Item.FindControl("ltItem");
                ltItem.Text = "<a href=\"#\">" + ItemName + "</a>";
            }
        }

        protected void rptSlider_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item | e.Item.ItemType == ListItemType.AlternatingItem)
            {
                int CategoryID =Convert.ToInt32(DataBinder.Eval(e.Item.DataItem, "CategoryID"));

                DataTable objBind = new DataTable();
                objBind = BindSlider(CategoryID);
                Repeater rptSlider = (Repeater)e.Item.FindControl("rptSubSlider");
                if (rptSlider != null)
                {
                    rptSlider.DataSource = objBind;
                    rptSlider.DataBind();
                }
            }
        }

        #endregion

        #region "Event Handles"

        protected void Page_Load(object sender, System.EventArgs e)
        {
            try
            {
                if (!IsPostBack)
                {
                    BindDataNav();
                }
            }
            catch
            {
            }
        }
        #endregion
    }
}
VB.NET Code
'Visit http://www.laptrinhdotnet.com for more ASP.NET Tutorials
Imports System.IO

Namespace ResponsiveMultiItemSlider

    Public Class _Default
        Inherits System.Web.UI.Page

#Region "Bind Data"

        Private Function BindSlider(ByVal CategoryID As Integer) As DataTable
            Dim objSQL As New SqlDataProvider
            Dim objBind As DataTable
            objBind = objSQL.FillTable("Select * from Products Where CategoryID=" & CategoryID)
            Return objBind
        End Function

        Private Sub BindDataNav()
            Dim objSQL As New SqlDataProvider
            Dim objBind As DataTable
            objBind = objSQL.FillTable("Select * from Categories")
            rptNav.DataSource = objBind
            rptNav.DataBind()
            rptSlider.DataSource = objBind
            rptSlider.DataBind()
        End Sub

#End Region

#Region "Repeater Methods"

        Private Sub rptNav_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles rptNav.ItemDataBound
            If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
                Dim ItemName As String = DataBinder.Eval(e.Item.DataItem, "CategoryName")
                Dim ltItem As Literal = DirectCast(e.Item.FindControl("ltItem"), Literal)
                ltItem.Text = "<a href=""#"">" & ItemName & "</a>"
            End If
        End Sub

        Private Sub rptSlider_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles rptSlider.ItemDataBound
            If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
                Dim CategoryID As Integer = DataBinder.Eval(e.Item.DataItem, "CategoryID")

                Dim objBind As New DataTable
                objBind = BindSlider(CategoryID)
                Dim rptSlider As Repeater = DirectCast(e.Item.FindControl("rptSubSlider"), Repeater)
                If Not rptSlider Is Nothing Then
                    rptSlider.DataSource = objBind
                    rptSlider.DataBind()
                End If
            End If
        End Sub

#End Region

#Region "Event Handles"

        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            Try
                If Page.IsPostBack = False Then
                    BindDataNav()
                End If
            Catch ex As Exception

            End Try
        End Sub

#End Region

    End Class

End Namespace

Code Example C#, Code Example VB.NET
Code Example C#, Code Example VB.NET



Chúc các bạn thành công!

Quang Bình

Share This:

Mỗi bài viết đều là công sức và thời gian của tác giả ví vậy tác giả chỉ có một mong muốn duy nhất nếu ai đó có Copy thì xin hãy ghi rõ nguồn và thông tin tác giả ở cuối mỗi bài viết.
Xin cảm ơn!

No Comment to " Responsive Multi Item Slider with jQuery in Asp.net "

  • To add an Emoticons Show Icons
  • To add code Use [pre]code here[/pre]
  • To add an Image Use [img]IMAGE-URL-HERE[/img]
  • To add Youtube video just paste a video link like http://www.youtube.com/watch?v=0x_gnfpL3RM