无法将DataKeyNames添加到网格视图中

时间:2013-03-02 03:42:40

标签: asp.net mysql vb.net

我原本在检测网格视图中的复选框状态时遇到问题。

显然,该问题的解决方案之一是将DataKeyNames值添加到网格视图中。但是,如果我将DataKey值添加到我的网格视图中,则在运行代码时不会填充它。

有人可以指出我的错误吗?

这是网格视图的原始头部,可以填充:

<asp:GridView ID="GridView1" runat="server"  CellPadding="4" ForeColor="#333333" 
    GridLines="None" Width="1500px">

这是我添加DataKeyNames之后的代码:

<asp:GridView ID="GridView1" runat="server"  CellPadding="4" ForeColor="#333333" 
    GridLines="None" Width="1500px" DataKeyNames="account_id">

这是填充gridView的后端代码

Dim StrQwery As String = "SELECT account_id, account_name bla bla bla"       
    Dim smd As MySqlCommand
    smd = New MySqlCommand(StrQwery, myconn)
    smd.CommandType = CommandType.Text

    Dim da As New MySqlDataAdapter(smd)
    Dim cb As New MySqlCommandBuilder(da)
    Dim ds As New DataSet()
    da.Fill(ds)

    GridView1.DataSource = ds.Tables(0)
    GridView1.DataBind()

我无法理解为什么在添加DatakeyNames后,网格视图中没有填充值

网格视图的整个代码

 <asp:GridView ID="GridView1" runat="server"  CellPadding="4" ForeColor="#333333" 
        GridLines="None" Width="1500px"  >
        <Columns>

                    <asp:TemplateField >
                        <ItemTemplate>
                            <asp:CheckBox ID="CheckBox1" runat="server" textAlign="right" 
                             /> 
                        </ItemTemplate>

                    </asp:TemplateField>



          </Columns>
        <AlternatingRowStyle BackColor="White" />
        <EditRowStyle BackColor="#2461BF" />
        <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
        <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
        <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
        <RowStyle BackColor="#EFF3FB" />
        <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
        <SortedAscendingCellStyle BackColor="#F5F7FB" />
        <SortedAscendingHeaderStyle BackColor="#6D95E1" />
        <SortedDescendingCellStyle BackColor="#E9EBEF" />
        <SortedDescendingHeaderStyle BackColor="#4870BE" />
    </asp:GridView>

0 个答案:

没有答案