datagrid month paging

Yes is there any examples in vb or c# to have a datagrid paging by month.
Seven priceFull StackAsked:
Who is Participating?
wht1986Connect With a Mentor Commented:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head runat="server">
        <form id="form1" runat="server">
        <asp:GridView ID="GridView1" runat="server"></asp:GridView>
                    <asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="YearSelected" AutoPostBack="true">
                        <asp:ListItem Text="2009" />
                        <asp:ListItem Text="2008" />
                <td><asp:LinkButton ID="LinkButton01" runat="server" Text="Jan" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton02" runat="server" Text="Feb" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton03" runat="server" Text="Mar" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton04" runat="server" Text="Apr" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton05" runat="server" Text="May" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton06" runat="server" Text="Jun" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton07" runat="server" Text="Jul" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton08" runat="server" Text="Aug" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton09" runat="server" Text="Sep" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton10" runat="server" Text="Oct" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton11" runat="server" Text="Nov" OnClick="MonthSelected" /></td>
                <td><asp:LinkButton ID="LinkButton12" runat="server" Text="Dec" OnClick="MonthSelected" /></td>
Imports System.Data
Partial Class _Default
    Inherits System.Web.UI.Page
    Dim months As String() = {"", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}
    'create a data table and mock data for the example
    Private Function CreateMockData() As DataTable
        Dim d As DataTable = New DataTable()
        d.Columns.Add("MyDateColumn", Type.GetType("System.DateTime"))
        d.Columns.Add("MyStringColumn1", Type.GetType("System.String"))
        d.Columns.Add("MyStringSolumn2", Type.GetType("System.String"))
        d.Rows.Add(New Object() {New DateTime(2008, 1, 2), "Bob", "Barker"})
        d.Rows.Add(New Object() {New DateTime(2009, 1, 2), "Bob", "Marley"})
        d.Rows.Add(New Object() {New DateTime(2008, 10, 8), "Bob", "Villa"})
        d.Rows.Add(New Object() {New DateTime(2009, 4, 12), "Bob", "InTheWater"})
        d.Rows.Add(New Object() {New DateTime(2009, 4, 28), "Bob", "Ber"})
        Return d
    End Function
    ' store in viewstate since we dont have a valid sql datasource
    Public Property Data() As DataTable
            If IsNothing(ViewState("DATATABLE")) Then
                Me.Data = CreateMockData()
            End If
            Return ViewState("DATATABLE")
        End Get
        Set(ByVal value As DataTable)
            ViewState("DATATABLE") = value
        End Set
    End Property
    Public Property SelectedYear() As Integer
            If IsNothing(ViewState("SelectedYear")) Then
                Me.SelectedYear = 2008
            End If
            Return ViewState("SelectedYear")
        End Get
        Set(ByVal value As Integer)
            ViewState("SelectedYear") = value
        End Set
    End Property
    Public Property SelectedMonth() As Integer
            If IsNothing(ViewState("SelectedMonth")) Then
                Me.SelectedMonth = 1
            End If
            Return ViewState("SelectedMonth")
        End Get
        Set(ByVal value As Integer)
            ViewState("SelectedMonth") = value
        End Set
    End Property
    Protected Sub MonthSelected(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim lb As LinkButton = sender
        SelectedMonth = Array.IndexOf(months, lb.Text)
    End Sub
    Protected Sub YearSelected(ByVal sender As Object, ByVal e As System.EventArgs)
        SelectedYear = Integer.Parse(DropDownList1.SelectedItem.Text)
    End Sub
    Private Sub SetFilter()
        Dim startDate As DateTime = New DateTime(SelectedYear, SelectedMonth, 1)
        Dim endDate As DateTime = startDate.AddMonths(1)
        Dim filter As String = String.Format("MyDateColumn >= '{0}' and MyDateColumn < '{1}'", startDate.ToShortDateString(), endDate.ToShortDateString())
        GridView1.EmptyDataText = String.Format("No records for {0} {1}", months(Me.SelectedMonth), Me.SelectedYear)
        Dim dv As DataView = New DataView(Me.Data)
        dv.RowFilter = filter
        GridView1.DataSource = dv
    End Sub
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
        End If
    End Sub
End Class

Open in new window

You could emulate it by setting the filter property on a bindingsource

e.g. I have a form with a datagrid, a dataset, and a bindingsource on it
the bindingsource's data source is the dataset
the data grid's data source is the bindingsource

to page to a certain month (say january this year) you can set the filter to something like
BindingSource1.Filter = "DateColumn >= '1/1/2009' and DateColumn < '2/1/2009'"

then only the one month would be visible in the datagrid
Seven priceFull StackAuthor Commented:
Well more like for example
April        May
you will click on May and it will take you to june or click on April and take you to march, But I need it to show upMarch or shop up June.
Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

That's essentially what I was trying to show you. I created a working sample project for you here
Seven priceFull StackAuthor Commented:
Understood but this is is a windows form. do you have an example for a web display
Seven priceFull StackAuthor Commented:
Seven priceFull StackAuthor Commented:
wht>> I figured you aremore familar with this maybe you can help with this one.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.