GridView中的数据来自查询

时间:2018-05-04 07:42:59

标签: asp.net sql-server vb.net

我有一个返回两行的查询("姓名","姓氏","年龄":这些是我查询的标题)。
我想在myPage.aspx中看到一个表格,其中包含" Name"'的列,并添加一个新列(这个新列有两个执行其他查询的按钮)。
这里有我的代码(我的aspx页面的VB代码):

Private Sub Validazione_Load(sender As Object, e As EventArgs) Handles Me.Load
    id_persona = '001'
    'Execute query
    Dim dbCmd As SqlCommand
    Dim dbRdr As SqlDataReader
    Dim dtDataTable As New DataTable
    dbCmd = fpd.dbConn.CreateCommand
    With dbCmd
        .CommandType = CommandType.StoredProcedure
        .CommandText = "sp_fo_myStoreProcedure"
        .Parameters.Add("@id_PERSONA", SqlDbType.Int).Value = ContextHandler.id_PERSONA
    End With
    dbRdr = dbCmd.ExecuteReader
    'Load data from query (two rows)
    dtDataTable.Load(dbRdr)        
    myGridView.DataSource = dtDataTable
    myGridView.DataBind()
    dbRdr.Close()
    dbCmd.Dispose()
End Sub

我确信我有两行。

我的问题:myGridView是" double",两个表并排。 这是我的aspx页面:

<asp:GridView ID="myGridView" runat="server">
<Columns>
        <asp:CommandField />             
        <asp:BoundField DataField="namePers" HeaderText="Name Person" />
<asp:TemplateField HeaderText="Azioni">
        <ItemTemplate>
           <asp:LinkButton ID="btnPippo" style="padding-left: 5px; margin-top: 2px; padding-right: 5px; width: 108px; text-align: center;"  runat="server" CssClass="btnlink" CommandArgument='Pippo'>
                FirstBtn
           </asp:LinkButton>
           <asp:LinkButton ID="btnPluto" style="padding-left: 5px; margin-top: 2px; padding-right: 5px; width: 108px; text-align: center;"  runat="server" CssClass="btnlink" CommandArgument='Pluto'>
                SecondBtn
             </asp:LinkButton>
        </ItemTemplate>
</asp:TemplateField>

所以,我想:
1)为什么我看到两张桌子?我的错误在哪里?
2)仅查看&#34;姓名&#34;列及其数据
3)添加一个新列(我认为没有问题)

1 个答案:

答案 0 :(得分:1)

你必须设置autoGeneratecolumn =&#34; false&#34;

<asp:GridView ID="myGridView" runat="server" autogeneratecolumns="False">
相关问题