我正在使用 C#.net
我想向我的 GridView1 添加自定义编辑/删除按钮(每行一个编辑/删除按钮)。
但是我希望按钮访问另一个 View (同一表单中的 editView/deleteView),而不是编辑“内联”等。
编辑按钮似乎工作正常。这是我手动创建它的方式:
Right clicked on GridView1
Clicked on ‘Add New Column’
Field Type: ButtonField
Header Text: Edit
Button Type: Button
Command Name: Edit
Text: Edit
在 GridView1 的“事件”部分(位于属性下),我双击 RowEditing,然后创建了一个我可以在后面的代码中访问的事件。
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
// Access _viewAdd
_multiView1.ActiveViewIndex = 1;
}
删除按钮应该访问 deleteView(确认页面),而不是仅仅自动删除一行。我想创建一个在用户选择删除按钮时触发的自定义方法。
最佳答案
我最终使用了中继器并将编辑/删除按钮修改到每一行的末尾。这些按钮不仅包含 OnClick_Event 信息,还包含与该行关联的 ID。
<asp:Repeater ID="Repeater" runat="server" DataSourceID="*****">
<HeaderTemplate>
<table cellpadding="3" cellspacing="3">
<tr>
<th style="text-align:left">Name</th>
<th> </th>
<th> </th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td style="text-align:left"><%#Eval("forename")%> <%#Eval("surname")%></td>
<td style="text-align:left"><asp:Button ID="edit" OnCommand="edit_Click" CommandArgument='<%#Eval("id")%>' runat="server" Text="Edit" CssClass="standardButton" /></td>
<td style="text-align:left"><asp:Button ID="delete" OnCommand="delete_Click" CommandArgument='<%#Eval("id")%>' runat="server" Text="Delete" CssClass="standardButton" /></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
我希望这对其他人有帮助。
关于c# - 自定义编辑/删除按钮 Gridview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1307140/