您的位置:首页 > 其它

获取GridView内TextBox控件的值

2014-10-02 18:36 246 查看
代码 

<asp:GridView ID="NianDaiGridView" runat="server" AllowPaging="True" 

                 AutoGenerateColumns="False" BorderWidth="1px" CellPadding="4" 

                 ForeColor="#333333" Width="100%" DataKeyNames="niandaid" PageSize="8" 

                 EnableModelValidation="True" 

                     onpageindexchanging="NianDaiGridView_PageIndexChanging" 

                     onrowcreated="NianDaiGridView_RowCreated" 

                     onrowcancelingedit="NianDaiGridView_RowCancelingEdit" 

                     onrowediting="NianDaiGridView_RowEditing" 

                     onrowupdating="NianDaiGridView_RowUpdating" 

                     onrowdeleting="NianDaiGridView_RowDeleting">

                 <RowStyle BackColor="#EFF3FB" HorizontalAlign="Center" />

                 <Columns>

                     <asp:BoundField DataField="niandaid" HeaderText="编号" ReadOnly="True" />

                     <asp:TemplateField HeaderText="朝代国家">

                         <ItemTemplate>

                             <asp:Label ID="lblcaodaim" runat="server" Text='<%#Eval("caodaim") %>'></asp:Label>

                             <asp:Label ID="lblguoming" runat="server"  Text='<%#Eval("guoming") %>'></asp:Label>

                         </ItemTemplate>

                         <EditItemTemplate>

                             <asp:TextBox ID="txtcaodaim" runat="server" Text='<%#Eval("caodaim") %>' Width="50px"></asp:TextBox>

                             <asp:TextBox ID="txtguoming" runat="server" Text='<%#Eval("guoming") %>' Width="80px"></asp:TextBox>

                         </EditItemTemplate>

                     </asp:TemplateField>

                     <asp:TemplateField HeaderText="起止年代(年)">

                         <ItemTemplate>

                             <asp:Label ID="lblqizhi" runat="server" Text='<%#Eval("qizhi") %>'></asp:Label>

                         </ItemTemplate>

                         <EditItemTemplate>

                             <asp:TextBox ID="txtqizhi" runat="server" Text='<%#Eval("qizhi") %>'></asp:TextBox>

                         </EditItemTemplate>

                     </asp:TemplateField>

                     <asp:CommandField HeaderText="编辑" ShowEditButton="True" />

                     <asp:TemplateField HeaderText="删除">

                         <ItemTemplate>

                             <asp:LinkButton ID="LinkButton1" runat="server" 

                                 CommandArgument='<%#Eval("niandaid") %>' CommandName="GetDeleteByID" 

                                 OnClientClick="return confirm("您真的要删除这条记录吗?")" Text="删除" CausesValidation="False">删除</asp:LinkButton>

                         </ItemTemplate>

                     </asp:TemplateField>

                 </Columns>

                 <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />

                 <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />

                 <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />

                 <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" 

                     Height="30px" />

                 <EditRowStyle BackColor="#2461BF" />

                 <AlternatingRowStyle BackColor="White" />

             </asp:GridView>

代码 

protected void NianDaiGridView_RowUpdating(object sender, GridViewUpdateEventArgs e)

        {

            //获得编号 这个编号要在GridView中设置一下属性 DataKeyNames 这里设置的是数据库的主键ID

            //e.RowIndex 这个通过 事件源 e 来获得RowIndex 代表 行号

            int agentId = int.Parse(this.NianDaiGridView.DataKeys[e.RowIndex].Value.ToString());

            //  这里是取得编辑时的值

            //  通过 Rows[e.RowIndex] 当时事件的行 

            //  FindControl[""]代表获取GridView内的控件名称,如FindControl("txtshehui")

            //  我们取出来的控件的类型都是Control类型 的,所以,我们要根据我们定义的控件类型去转换,这里是TextBox类型 (注意 括号的加法)

            //如果是其它类型,就转换成其它的类型就可以了如DropDownList

            TextBox txtguoming = (TextBox)NianDaiGridView.Rows[e.RowIndex].FindControl("txtguoming");

            TextBox txtqizhi = (TextBox)NianDaiGridView.Rows[e.RowIndex].FindControl("txtqizhi");

            string guoming = txtguoming.Text;

            string qizhi = txtqizhi.Text;

            //调用修改的方法

            //实例化对象

            txpj.Model.*** model = new txpj.Model.***();

            model.niandaid = agentId;

            model.guoming = guoming;

            model.qizhi = qizhi;

            txpj.BLL.***bll = new txpj.BLL.***();

            bll.Update(model);

            Page.ClientScript.RegisterStartupScript(this.GetType(), "PopupScript", "alert('修改成功!')", true);

            //修改完全后,把EditIndex设置为-1  ,非编辑状态

            this.NianDaiGridView.EditIndex = -1;

            //记得要重新调用一下绑定数据的方法哦

            dataBind();
        }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: