【问题标题】:asp.net data entry static gridasp.net 数据输入静态网格
【发布时间】:2015-11-11 15:30:30
【问题描述】:

我正在创建一个数据输入应用程序,并且我有一个我希望它的外观和功能的示例。我喜欢静态的网格,您可以单击单元格进行编辑。我附上了一张我希望它看起来的照片。谁能告诉我这是如何创建的?

【问题讨论】:

    标签: javascript c# asp.net gridview


    【解决方案1】:

    这是一个 .net GridView 使用 row commands 添加/更新/删除。

    这里是一个使用 sql 数据库的例子:

    <asp:GridView ID="gv" RunAt="Server" DataSourceID="sqlGrid" DataKeyNames="RowID" AllowPaging="False" AutoGenerateColumns="false" EnableModelValidation="True" AutoGenerateEditButton="False" AutoGenerateDeleteButton="False" GridLines="None" BorderWidth="0">
      <Columns>
        <asp:BoundField HeaderText="Col1" DataField="Col1" SortExpression="Col1"/>
        <asp:BoundField runat="Server" HeaderText="Col2" DataField="Col2" SortExpression="Col2"/>
        <asp:CommandField HeaderText="Edit" ShowEditButton="True"/>
        <asp:CommandField HeaderText="Delete" ShowDeleteButton="True"/>
      </Columns>
    </asp:GridView>
    
    <asp:SqlDataSource ID="sqlGrid" RunAt="Server" SelectCommand="spGrid" SelectCommandType="StoredProcedure" UpdateCommand="spGridUpdate" UpdateCommandType="StoredProcedure" DeleteCommand="spGridDelete" DeleteCommandType="StoredProcedure">
      <UpdateParameters>
        <asp:Parameter Name="Col1" Type="String" />
        <asp:Parameter Name="Col2" Type="String" />
        <asp:Parameter Name="RowID" Type="Int32" DefaultValue="0" />
      </UpdateParameters>
    </asp:SqlDataSource>
    

    要直接在网格中输入,请使用TemplateFields 在单元格中插入文本框。单击保存会将单元格的内容提交回您的数据库。


    创建空白行

    <asp:TemplateField HeaderText="Col1" SortExpression="Col1">
        <ItemTemplate>
            <asp:TexBox ID="txt1" runat="server"></asp:TexBox >
            <asp:TexBox ID="txt2" runat="server"></asp:TexBox >
        </ItemTemplate>
    </asp:TemplateField>
    

    工作流程

    1. 创建数据库/表/列。
    2. 创建存储过程来读取/编辑/删除数据库数据。
    3. 使用模板字段和文本框创建网格视图。
    4. 使用您的存储过程在 gridview 中填充数据。
    5. 使用 sqlDataSource 和 row 命令从 gridview 更新您的数据。

    【讨论】:

    • 谢谢@Obsidian,我想这部分回答了我的问题。基本工作流程是:他们单击新记录,整个空网格出现静态时间值列,他们可以单击保存以保存进度并完成以关闭表单,他们必须单击新记录以开始新的一。此外,行命令可以立即插入项目。所以基本上使用数据网格作为表单,它永远不会从数据库中获取值,只插入。我希望这是有道理的,谢谢你的帮助。
    • 如果起始记录总是空白,那么应该很容易。每次保存表单时,只需创建一个空白的 gridview 并将数据存储在一个新记录中。
    • 如何将空行添加到gridview? @黑曜石
    • 只需在模板字段中插入一个空白文本框!
    猜你喜欢
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-15
    • 1970-01-01
    • 2011-12-25
    • 2014-11-13
    • 1970-01-01
    相关资源
    最近更新 更多