FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 2068|回复: 1
打印 上一主题 下一主题

Grid动态添加行...写得不太好,但能实现,希望能添加到框架中

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-6 08:49:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
页面:
<ext:Grid ID="gridCustomerPlan" Title="客户邀约计划" ShowBorder="false" AutoScroll="true"
                                                ShowHeader="false" EnableRowNumber="True" runat="server" DataKeyNames="WEBID"
                                                Height="150px" Width="1100px">
                                                <Toolbars>
                                                    <ext:Toolbar ID="Toolbar1" runat="server">
                                                        <Items>
                                                            <ext:Button ID="btnCustomerPlan" runat="server" Text="添加空行" EnableAjax="true" Hidden="false"
                                                                Icon="Add">
                                                            </ext:Button>
                                                        </Items>
                                                    </ext:Toolbar>
                                                </Toolbars>
                                                <Columns>
                                                    <ext:TemplateField HeaderText="ID" Width="100px" Hidden="true">
                                                        <ItemTemplate>
                                                            <asp:TextBox ID="txtWEBID_P" runat="server" Width="80px" TabIndex='<%# Container.DataItemIndex + 10 %>'
                                                                Text='<%# Eval("WEBID") %>'>
                                                            </asp:TextBox>
                                                        </ItemTemplate>
                                                    </ext:TemplateField>
                                                    <ext:TemplateField HeaderText="来源" Width="100px">
                                                        <ItemTemplate>
                                                            <asp:TextBox ID="txtPERSON_SOURCE" runat="server" Width="80px" TabIndex='<%# Container.DataItemIndex + 10 %>'
                                                                Text='<%# Eval("PERSON_SOURCE") %>'>
                                                            </asp:TextBox>
                                                        </ItemTemplate>
                                                    </ext:TemplateField>
                                                    <ext:TemplateField HeaderText="预估人数" Width="100px">
                                                        <ItemTemplate>
                                                            <asp:TextBox ID="txtPERSON_NUM" runat="server" Width="80px" TabIndex='<%# Container.DataItemIndex + 10 %>'
                                                                Text='<%# Eval("PERSON_NUM") %>'>
                                                            </asp:TextBox>
                                                        </ItemTemplate>
                                                    </ext:TemplateField>
                                                </Columns>
                                            </ext:Grid>
后台:

Private Sub InitCustomerPlanTable()
        Dim dt As New DataTable("Table5")
        With dt
            .Columns.Clear()
            .Columns.Add(New DataColumn("WEBID", Type.GetType("System.String")))
            .Columns.Add(New DataColumn("PERSON_SOURCE", Type.GetType("System.String")))
            .Columns.Add(New DataColumn("PERSON_NUM", Type.GetType("System.String")))
        End With
        Dim row As DataRow = dt.NewRow()
        dt.Rows.Add(row)
        dt.AcceptChanges()
        gridCustomerPlan.DataSource = dt
        gridCustomerPlan.DataBind()
    End Sub
'获取当前表格数据
Public Function GetDataFromCustomerPlanGrid() As DataTable
        Dim dt As New DataTable("Table5")
        With dt
            .Columns.Clear()
            .Columns.Add(New DataColumn("WEBID", Type.GetType("System.String")))
            .Columns.Add(New DataColumn("PERSON_SOURCE", Type.GetType("System.String")))
            .Columns.Add(New DataColumn("PERSON_NUM", Type.GetType("System.String")))
        End With
        For i As Integer = 0 To gridCustomerPlan.Rows.Count - 1
            Dim gRow As GridRow = gridCustomerPlan.Rows(i)
            Dim newRow As DataRow = dt.NewRow()
            newRow(0) = DirectCast(gRow.FindControl("txtWEBID_P"), System.Web.UI.WebControls.TextBox).Text
            newRow(1) = DirectCast(gRow.FindControl("txtPERSON_SOURCE"), System.Web.UI.WebControls.TextBox).Text
            newRow(2) = IIf(IsNumeric(DirectCast(gRow.FindControl("txtPERSON_NUM"), System.Web.UI.WebControls.TextBox).Text) = False, 0, DirectCast(gRow.FindControl("txtPERSON_NUM"), System.Web.UI.WebControls.TextBox).Text)
            dt.Rows.Add(newRow)
        Next
        dt.AcceptChanges()
        Return dt
    End Function
'添加行按钮
Protected Sub btnCustomerPlan_Click(sender As Object, e As EventArgs) Handles btnCustomerPlan.Click
        Dim dt As DataTable = GetDataFromCustomerPlanGrid()
        Dim newRow As DataRow = dt.NewRow()
        dt.Rows.Add(newRow)
        gridCustomerPlan.DataSource = dt
        gridCustomerPlan.DataBind()
    End Sub
沙发
发表于 2013-6-9 14:51:59 | 只看该作者
好!!  增改删都可以了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-28 18:00 , Processed in 0.042933 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表