3

所以在这里我试图让文本框填充来自DataGridView的选定数据,所以当我点击DataGridView中的按钮时,选定的结果将被放入文本框,我已经尝试了其他资源的解决方案但仍然没运气。有人可以帮忙吗?这是 DataGridView 代码:

数据网格视图:

<asp:Panel ID="PanelDGV" runat="server" ScrollBars="None" Height="250" Width="515">
     <asp:GridView ID="DGV" runat="server" AutoGenerateColumns="False" GridLines="None" AllowPaging="true" PageSize="8" CssClass="mGrid" PagerStyle-CssClass="pgr" AlternatingRowStyle-CssClass="alt">
              <Columns>
     <asp:BoundField DataField="ProjectCode" HeaderText="Project Code" />
     <asp:BoundField DataField="ProjectName" HeaderText="Project Name" />
     <asp:ButtonField ButtonType="Image" ImageUrl="../Support/Image/Edit.png" ItemStyle-HorizontalAlign="Center" CommandName="CmdSearch" HeaderText="Edit">
              <ItemStyle HorizontalAlign="Center"></ItemStyle>
                    </asp:ButtonField>
              </Columns>
                    <PagerStyle CssClass="pgr"></PagerStyle>
                    AlternatingRowStyle CssClass="alt"></AlternatingRowStyle>
      </asp:GridView>
</asp:Panel>

注意按钮是:

 <asp:ButtonField ButtonType="Image" ImageUrl="../Support/Image/Edit.png" ItemStyle-HorizontalAlign="Center" CommandName="CmdSearch" HeaderText="Edit">

哦,文本框的ID是“TbProjectCode”,两者都在不同的页面中,比如说1.aspx包含文本框和一个打开datagridview的按钮,2.aspx包含datagridview和选择项目代码的按钮。

谢谢你

4

1 回答 1

3

在您的 gridview 上添加 OnRowCommand 事件:OnRowCommand="DGV_OnRowCommand"。

然后将其添加到您的代码后面:

    protected void DGV_OnRowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "CmdSearch")
        {
            int index = (int)e.CommandArgument;
            GridViewRow row = DGV.Rows[index];
            // Get the text on first cell of the row which is the project code.
            TbProjectCode.Text = row.Cells[0].Text;
        }
    }
于 2013-05-28T03:57:05.910 回答