aligning datagrid columns

Discussion in 'ASP .Net' started by =?Utf-8?B?SmVubmlmZXI=?=, Nov 22, 2004.

  1. I have a datagrid where I am trying to align some columns to the center. The
    rest should be aligned to the right. When I try the code below I get an
    error message saying that the index is out of bounds. When debugging I get
    the column count of the datagrid to be 1. I find this rather ridiculous only
    because there are 61 columns that I can physically see. :) Plus, the data
    table that I am using to bind the datagrid has a count of 61. Could someone
    please take a look at the code below to see what I am missing, if I am
    missing anything? I appreciate any help.

    Thanks,
    Jennifer



    Private Sub FillGrid(ByVal SortExp As String)
    Dim dvMain As DataView
    Dim X As Int64
    Dim dtMain As New DataTable()
    Dim DR As DataRow
    Dim Update_User As String
    If txtStartDate.Text <> "*" Then
    If txtEndDate.Text = "*" Then Exit Sub
    End If
    dvMain = GetDailySales(txtUnitID.Text, txtStartDate.Text, txtEndDate.Text)
    If SortExp <> "" Then
    dvMain.Sort = SortExp
    End If
    Dim Col1, Col2, Col3, Col4, Col5, Col6, Col7, Col8, Col9, Col10 As String
    Dim Col11, Col12, Col13, Col14, Col15, Col16, Col17, Col18, Col19, Col20
    As String
    Dim Col21, Col22, Col23, Col24, Col25, Col26, Col27, Col28, Col29, Col30
    As String
    Dim Col31, Col32, Col33, Col34, Col35, Col36, Col37, Col38, Col39, Col40
    As String
    Dim Col41, Col42, Col43, Col44, Col45, Col46, Col47, Col48, Col49, Col50,
    Col51, Col52 As String
    Dim Col53, Col54, Col55, Col56, Col57, Col58, Col59, Col60, Col61 As String

    Col1 = "Unit"
    Col2 = "Date"
    Col3 = "Status"
    Col4 = "Deposit" & vbCrLf & "Evening" & vbCrLf & "$"
    Col55 = "Deposit" & vbCrLf & "Evening" & vbCrLf & "$" & vbCrLf & "Verified"
    Col5 = "Deposit" & vbCrLf & "Early_Bird" & vbCrLf & "$"
    '-----more column names set here------------

    dtMain.Columns.Add(Col1)
    dtMain.Columns.Add(Col2)
    dtMain.Columns.Add(Col3)
    dtMain.Columns.Add(Col4)
    If chkViewVerif.Checked = True Then dtMain.Columns.Add(Col55)
    '-----adding the rest of the columns to the data row here

    Dim BD As Date
    For X = 0 To dvMain.Count - 1
    DR = dtMain.NewRow
    DR(Col1) = dvMain(X)("Unit_ID")
    BD = dvMain(X)("Business_Date")
    DR(Col2) = BD.ToShortDateString
    DR(Col3) = dvMain(X)("Status")
    If IsDBNull(dvMain(X)("User_ID")) Then
    DR(Col50) = dvMain(X)("User_ID")
    Else
    Update_User = dvMain(X)("User_ID")
    DR(Col50) = Update_User.Substring(12)
    End If
    DR(Col4) = Format(dvMain(X)("Deposit_Eve_Amt"), "N")
    If chkViewVerif.Checked = True Then DR(Col55) =
    dvMain(X)("Deposit_Eve_Amt_Verified")
    '--- assigning the rest of the values here
    dtMain.Rows.Add(DR)
    Next

    dgDSR.DataSource = dtMain
    dgDSR.DataBind()

    '---trying to align a column here (and it doesn't work)
    dgDSR.Columns(2).ItemStyle.HorizontalAlign = HorizontalAlign.Center

    End Sub
     
    =?Utf-8?B?SmVubmlmZXI=?=, Nov 22, 2004
    #1
    1. Advertising

  2. Well, I still don't get why original code posted does not work, but if anyone
    else has run into the same situation, I found the following code will work.

    My thanks to Greg O. who posted at
    http://www.dotnet247.com/247reference/msgs/25/125572.aspx


    Dim tablerowitem As System.Web.UI.WebControls.DataGridItem
    tablerowitem = dgDSR.Controls(0).Controls(0)
    For Each tablerowitem In dgDSR.Items
    tablerowitem.Cells(3).HorizontalAlign = HorizontalAlign.Center
    If chkViewVerif.Checked = True Then
    tablerowitem.Cells(5).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(7).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(9).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(11).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(14).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(16).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(18).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(20).HorizontalAlign = HorizontalAlign.Center
    tablerowitem.Cells(22).HorizontalAlign = HorizontalAlign.Center
    End If
    Next

    "Jennifer" wrote:

    > I have a datagrid where I am trying to align some columns to the center. The
    > rest should be aligned to the right. When I try the code below I get an
    > error message saying that the index is out of bounds. When debugging I get
    > the column count of the datagrid to be 1. I find this rather ridiculous only
    > because there are 61 columns that I can physically see. :) Plus, the data
    > table that I am using to bind the datagrid has a count of 61. Could someone
    > please take a look at the code below to see what I am missing, if I am
    > missing anything? I appreciate any help.
    >
    > Thanks,
    > Jennifer
    >
    >
    >
    > Private Sub FillGrid(ByVal SortExp As String)
    > Dim dvMain As DataView
    > Dim X As Int64
    > Dim dtMain As New DataTable()
    > Dim DR As DataRow
    > Dim Update_User As String
    > If txtStartDate.Text <> "*" Then
    > If txtEndDate.Text = "*" Then Exit Sub
    > End If
    > dvMain = GetDailySales(txtUnitID.Text, txtStartDate.Text, txtEndDate.Text)
    > If SortExp <> "" Then
    > dvMain.Sort = SortExp
    > End If
    > Dim Col1, Col2, Col3, Col4, Col5, Col6, Col7, Col8, Col9, Col10 As String
    > Dim Col11, Col12, Col13, Col14, Col15, Col16, Col17, Col18, Col19, Col20
    > As String
    > Dim Col21, Col22, Col23, Col24, Col25, Col26, Col27, Col28, Col29, Col30
    > As String
    > Dim Col31, Col32, Col33, Col34, Col35, Col36, Col37, Col38, Col39, Col40
    > As String
    > Dim Col41, Col42, Col43, Col44, Col45, Col46, Col47, Col48, Col49, Col50,
    > Col51, Col52 As String
    > Dim Col53, Col54, Col55, Col56, Col57, Col58, Col59, Col60, Col61 As String
    >
    > Col1 = "Unit"
    > Col2 = "Date"
    > Col3 = "Status"
    > Col4 = "Deposit" & vbCrLf & "Evening" & vbCrLf & "$"
    > Col55 = "Deposit" & vbCrLf & "Evening" & vbCrLf & "$" & vbCrLf & "Verified"
    > Col5 = "Deposit" & vbCrLf & "Early_Bird" & vbCrLf & "$"
    > '-----more column names set here------------
    >
    > dtMain.Columns.Add(Col1)
    > dtMain.Columns.Add(Col2)
    > dtMain.Columns.Add(Col3)
    > dtMain.Columns.Add(Col4)
    > If chkViewVerif.Checked = True Then dtMain.Columns.Add(Col55)
    > '-----adding the rest of the columns to the data row here
    >
    > Dim BD As Date
    > For X = 0 To dvMain.Count - 1
    > DR = dtMain.NewRow
    > DR(Col1) = dvMain(X)("Unit_ID")
    > BD = dvMain(X)("Business_Date")
    > DR(Col2) = BD.ToShortDateString
    > DR(Col3) = dvMain(X)("Status")
    > If IsDBNull(dvMain(X)("User_ID")) Then
    > DR(Col50) = dvMain(X)("User_ID")
    > Else
    > Update_User = dvMain(X)("User_ID")
    > DR(Col50) = Update_User.Substring(12)
    > End If
    > DR(Col4) = Format(dvMain(X)("Deposit_Eve_Amt"), "N")
    > If chkViewVerif.Checked = True Then DR(Col55) =
    > dvMain(X)("Deposit_Eve_Amt_Verified")
    > '--- assigning the rest of the values here
    > dtMain.Rows.Add(DR)
    > Next
    >
    > dgDSR.DataSource = dtMain
    > dgDSR.DataBind()
    >
    > '---trying to align a column here (and it doesn't work)
    > dgDSR.Columns(2).ItemStyle.HorizontalAlign = HorizontalAlign.Center
    >
    > End Sub
    >
     
    =?Utf-8?B?SmVubmlmZXI=?=, Nov 22, 2004
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Carlos
    Replies:
    0
    Views:
    581
    Carlos
    Aug 14, 2006
  2. rob thomson
    Replies:
    0
    Views:
    264
    rob thomson
    Sep 4, 2003
  3. Anthony Judd

    Aligning DataGrid Columns!!

    Anthony Judd, Oct 31, 2004, in forum: ASP .Net Datagrid Control
    Replies:
    1
    Views:
    126
    Scott M.
    Nov 1, 2004
  4. Jennifer

    Aligning Particular Columns in a Data Grid

    Jennifer, Nov 18, 2004, in forum: ASP .Net Web Controls
    Replies:
    4
    Views:
    188
    Jennifer
    Nov 19, 2004
  5. Matthew Van Gundy
    Replies:
    0
    Views:
    108
    Matthew Van Gundy
    Nov 4, 2003
Loading...

Share This Page