Question Gridview BoundField Visible False Problem?

raysefo

Well-known member
Joined
Jul 21, 2010
Messages
207
Programming Experience
Beginner
Hi,

I have a gridview and have some unvisible boundfields. I would like to get data from those unvisible fields.

Gridview
HTML:
<asp:GridView ID="GridView" runat="server" AutoGenerateColumns="False" CssClass="gridview"
            DataKeyNames="mtipi,myeri,pbirim">
            <Columns>
                <asp:BoundField DataField="mtipitext" HeaderText="<%$ Resources:Masraf, mtipi %>"
                    HtmlEncode="False" />
                <asp:BoundField DataField="mtipi" HeaderText="mtipi" Visible="false" />
                <asp:BoundField DataField="myeri" HeaderText="myeri" Visible="false" />
                <asp:BoundField DataField="myeritext" HeaderText="<%$ Resources:Masraf, myeri %>"
                    HtmlEncode="False" />
                <asp:BoundField DataField="belgeno" HeaderText="<%$ Resources:Masraf, belgeno %>"
                    HtmlEncode="False" />
                <asp:BoundField DataField="sirket" HeaderText="<%$ Resources:Masraf, sirket %>" HtmlEncode="False" />
                <asp:BoundField DataField="tutar" HeaderText="<%$ Resources:Masraf, tutar %>" HtmlEncode="False" />
                <asp:BoundField DataField="pbirim" HeaderText="pbirim" Visible="false" />
                <asp:BoundField DataField="pbirimtext" HeaderText="<%$ Resources:Masraf, pbirim %>"
                    HtmlEncode="False" />
                <asp:BoundField DataField="kdv" HeaderText="<%$ Resources:Masraf, kdv %>" HtmlEncode="False" />
                <asp:BoundField DataField="tarih" HeaderText="<%$ Resources:Masraf, tarih %>" HtmlEncode="False" />
                <asp:BoundField DataField="aciklama" HeaderText="<%$ Resources:Masraf, aciklama %>"
                    HtmlEncode="False" />
                <asp:ButtonField ButtonType="Button" CommandName="COPY" Text="<%$ Resources:Masraf, Button_kopyala %>"
                    ImageUrl="~/Images/Gridview/copy.png" />
                <asp:ButtonField ButtonType="Button" CommandName="DLT" Text="<%$ Resources:Masraf, Button_sil %>"
                    ImageUrl="~/Images/Gridview/del.png" />
            </Columns>
            <HeaderStyle CssClass="GridStyle_header" />
        </asp:GridView>
I m trying to get data in rowcommand
VB.NET:
Protected Sub GridView_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView.RowCommand
        If e.CommandName = "COPY" Then
            'Dim row As GridViewRow = CType(CType(e.CommandSource, Control).NamingContainer, GridViewRow)
            Dim rowIndex As Int32 = Convert.ToInt32(e.CommandArgument)
            Dim row As GridViewRow = GridView.Rows(rowIndex)

            TextBox_belgeno.Text = row.Cells(4).Text
            TextBox_sirket.Text = row.Cells(5).Text
            TextBox_tutar.Text = row.Cells(6).Text
            TextBox_tarih.Text = row.Cells(10).Text
            Dim str As String = row.Cells(11).Text
            TextBox_aciklama.Text = str.Replace(" ", "")

            DropDownList_masraftipi.SelectedValue = GridView.DataKeys(rowIndex).Values("mtipi").ToString()
            DropDownList_myeri.SelectedValue = GridView.DataKeys(rowIndex).Values("myeri").ToString()
            DropDownList_kdv.SelectedValue = row.Cells(9).Text
            DropDownList_parabirimi.SelectedValue = GridView.DataKeys(rowIndex).Values("pbirim").ToString()

But unvisible fields are null???

Any idea?

Thanks in advance.
 
I m populating this gridview in a button click

Dim dt As New DataTable


Dim colName As String() = {"mtipitext", "mtipi", "myeri", "myeritext", "belgeno", "sirket", "tutar", "pbirim", "pbirimtext", "kdv", "tarih", "aciklama"}
For Each colName1 In colName
If Not dt.Columns.Contains(colName1) Then
dt.Columns.Add(colName1, GetType(System.String))
End If
Next



Dim row As GridViewRow
For Each row In GridView.Rows
Dim dr As Data.DataRow = dt.NewRow()

For i As Integer = 0 To GridView.Columns.Count - 3
dr(i) = row.Cells(i).Text
Next
dt.Rows.Add(dr)
Next

Dim drform As Data.DataRow = dt.NewRow()
drform(0) = DropDownList_masraftipi.SelectedItem.Text
drform(1) = DropDownList_masraftipi.SelectedValue
drform(2) = DropDownList_myeri.SelectedValue
drform(3) = DropDownList_myeri.SelectedItem.Text
drform(4) = TextBox_belgeno.Text
drform(5) = TextBox_sirket.Text
drform(6) = TextBox_tutar.Text
drform(7) = DropDownList_parabirimi.SelectedValue
drform(8) = DropDownList_parabirimi.SelectedItem.Text
drform(9) = DropDownList_kdv.SelectedValue
drform(10) = TextBox_tarih.Text
drform(11) = TextBox_aciklama.Text
dt.Rows.Add(drform)


GridView.DataSource = dt
GridView.DataBind()
 
Back
Top