telerik:RadGrid 在表格中编辑更新数据
对于 telerik 这个框架 我也不是很熟悉 也是刚刚开始学习 有兴趣的可以去官网看下
https://www.telerik.com/
啥也不多说 直接上代码
首先是 telerik:RadGrid 前台代码
<telerik:RadGrid OnItemCommand="RadGrid1_ItemCommand" AutoGenerateColumns="False" ID="RadGrid1" runat="server" CellSpacing="0" Height="490px" Culture="zh-CN" CssClass="gridTable" GridLines="Both" AllowPaging="True" AllowSorting="true" PageSize="50" OnNeedDataSource="RadGrid1_NeedDataSource" HeaderStyle-HorizontalAlign="Center"> <ExportSettings HideStructureColumns="true" ExportOnlyData="true" IgnorePaging="true" OpenInNewWindow="true" /> <PagerStyle Mode="NextPrevAndNumeric" AlwaysVisible="True" /> <ClientSettings EnableRowHoverStyle="true" AllowColumnsReorder="true" ReorderColumnsOnClient="true"> <Resizing AllowColumnResize="True" EnableRealTimeResize="True" /> <Scrolling AllowScroll="true" UseStaticHeaders="true" /> <Selecting AllowRowSelect="True" /> </ClientSettings> <MasterTableView Width="100%" ClientDataKeyNames="编号" DataKeyNames="编号" CommandItemDisplay="Top" EditMode="InPlace" > <Columns> <telerik:GridTemplateColumn HeaderText="序号" ItemStyle-HorizontalAlign="Center"> <ItemTemplate> <%#Container.ItemIndex + 1%> </ItemTemplate> <HeaderStyle Width="40" /> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="描述" > <ItemTemplate> <%# Eval("描述")%> </ItemTemplate> <HeaderStyle Width="150"></HeaderStyle> <EditItemTemplate> <telerik:RadTextBox ID="描述" Width="100%" runat="server" Text=' <%# Eval("描述")%>'></telerik:RadTextBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="内容" ItemStyle-HorizontalAlign="Center"> <ItemTemplate> <%# Eval("内容")%> </ItemTemplate> <HeaderStyle Width="50"></HeaderStyle> <EditItemTemplate> <telerik:RadTextBox ID="内容" Width="100%" runat="server" Text=' <%# Eval("内容")%>' ></telerik:RadTextBox> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridEditCommandColumn HeaderStyle-Width="6%" UniqueName="Edit" EditText="编辑" HeaderText="编辑" ItemStyle-HorizontalAlign="Center"> </telerik:GridEditCommandColumn> </Columns> </MasterTableView> </telerik:RadGrid>
注意我代码中标注带有下划线的 一行代码 他有三个设置 一个是在该行数据下方编辑 一个是在直接把数据变成文本框形式进行编辑 最后一种是弹窗式编辑
但是这次我写的是直接把数据变成文本框形式进行编辑
后台 代码
首先绑定数据 利用
RadGrid 中 的 OnNeedDataSource 方法进行绑定数据 绑定数据的形式和 GirdView 类似
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e) { RadGrid1.DataSource = 获取到的List 数据集合; }
想在 RadGrid 中 进行编辑修改数据 还需添加一个 方法 OnItemCommand
protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e) { try { GridEditableItem item = e.Item as GridEditableItem; if (e.CommandName == "Update") { string 编号 = item.GetDataKeyValue("编号").ToString(); RadTextBox 描述 = item.FindControl("描述") as RadTextBox; RadTextBox 内容 = item.FindControl("描述") as RadTextBox; //得到这些数据之后 进行相应的方法处理 进行修改数据 } } catch (Exception Exc) { throw; } }