datagrid month paging

Yes is there any examples in vb or c# to have a datagrid paging by month.
LVL 9
Seven priceFull StackAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

wht1986Commented:
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
0
Seven priceFull StackAuthor Commented:
Well more like for example
April        May
datagrid###
 
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.
0
wht1986Commented:
That's essentially what I was trying to show you. I created a working sample project for you here http://www.kevinwhite.net/sevensnake.zip
0
Exploring ASP.NET Core: Fundamentals

Learn to build web apps and services, IoT apps, and mobile backends by covering the fundamentals of ASP.NET Core and  exploring the core foundations for app libraries.

Seven priceFull StackAuthor Commented:
Understood but this is is a windows form. do you have an asp.net vb.net example for a web display
0
wht1986Commented:
Attached
================
Default.aspx
================
 
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
    <body>
        <form id="form1" runat="server">
        <asp:GridView ID="GridView1" runat="server"></asp:GridView>
        <table>
            <tr>
                <td>
                    <asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="YearSelected" AutoPostBack="true">
                        <asp:ListItem Text="2009" />
                        <asp:ListItem Text="2008" />
                    </asp:DropDownList>
                </td>
                <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>
            </tr>
        </table>
        </form>
    </body>
</html>
 
================
Default.aspx.vb
================
 
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
        Get
            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
        Get
            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
        Get
            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)
        SetFilter()
    End Sub
 
    Protected Sub YearSelected(ByVal sender As Object, ByVal e As System.EventArgs)
        SelectedYear = Integer.Parse(DropDownList1.SelectedItem.Text)
        SetFilter()
    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
        GridView1.DataBind()
    End Sub
 
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
            SetFilter()
        End If
    End Sub
 
 
End Class

Open in new window

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Seven priceFull StackAuthor Commented:
Thanks
0
Seven priceFull StackAuthor Commented:
wht>> I figured you aremore familar with this maybe you can help with this one.

http://www.experts-exchange.com/Programming/Languages/.NET/Q_24557798.html
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.