【发布时间】:2020-05-28 18:59:34
【问题描述】:
这个问题可能看起来很重复,但我面临的挑战略有不同。我有一个包含多个列的GridView。第一列是Button 列,其余列是从数据库中填充的。
问题陈述:
当用户单击特定行上的 Edit 按钮时,TextBox 应出现在 GridView gv2 中名为 UnitRate 的列中。 TextBox 的默认文本应该是同一单元格的值/文本。这个TextBox 应该只出现在那个特定的单元格中,而不是整个列。当前的GridView 如下所示。
GridView 的代码
<asp:GridView ID="gv2" runat="server" Font-Size="Small" OnRowCommand="gv2_RowCommand">
<HeaderStyle BackColor="Yellow" />
<AlternatingRowStyle BackColor="LightGray" />
<RowStyle BackColor="LightGray" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="btn_edit" runat="server" Text="Edit" CssClass="btn btn-warning btn-sm" CommandName="editData" CommandArgument='<%# Container.DisplayIndex %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns></asp:GridView>
【问题讨论】:
-
发布您尝试过的代码,但没有给您想要的。
-
您的 GridView 的标记是什么?你在使用模板列吗?如果没有,您是否愿意使用模板列?你在使用 RowEditingEvent 吗?一旦用户输入了新值,您希望发生什么?您将如何让您的应用程序知道用户已完成输入信息?你愿意接受 JavaScript/jQuery 解决方案吗?
-
@JonP 我正在使用
TemplateField作为按钮。我正在使用RowCommand事件,我希望在其中显示TextBox。一旦用户输入了值,他必须按下GridView下方表单中的OK按钮
标签: c# asp.net vb.net gridview webforms