【发布时间】:2015-06-21 08:15:04
【问题描述】:
是否可以根据 gridview 列中复选框的状态更改链接按钮的文本?
查看:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" DataKeyNames="Id" DataSourceID="SqlDataSource1" ForeColor="#333333" GridLines="None" OnRowCommand="FireRowCommand" >
<AlternatingRowStyle BackColor="White" />
<Columns>
<asp:CommandField ShowEditButton="False" ShowDeleteButton="False" />
<asp:TemplateField HeaderText="Approve">
<ItemTemplate>
<asp:LinkButton ID="approveBtn" runat="server" CommandArgument='<%# Eval("Id") %>'
CommandName="ApproveCmd" Text="Mark Approved" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Username" HeaderText="Username" SortExpression="Username" />
<asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />
<asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />
<asp:BoundField DataField="Telephone" HeaderText="Telephone" SortExpression="Telephone" />
<asp:BoundField DataField="Mobile" HeaderText="Mobile" SortExpression="Mobile" />
<asp:BoundField DataField="Email" HeaderText="Email" SortExpression="Email" />
<asp:BoundField DataField="BusinessName" HeaderText="BusinessName" SortExpression="BusinessName" />
<asp:CheckBoxField DataField="IsVerified" HeaderText="IsVerified" SortExpression="IsVerified" />
<asp:CheckBoxField DataField="IsNewsletter" HeaderText="IsNewsletter" SortExpression="IsNewsletter" Visible="false"/>
<asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" />
</Columns>
如果 IsVerified 为真,我希望将文本更改为“Mark Unapproved”。
代码隐藏:
protected void FireRowCommand(object sender, GridViewCommandEventArgs e)
{
var command = e.CommandName;
var clientId = Convert.ToInt32(e.CommandArgument);
switch (command)
{
case "ApproveCmd":
var service = new WholesaleClientService();
service.ToggleClientVerfication(clientId);
break;
}
}
【问题讨论】: