我正在使用Telerik的RadGrid和CommandItem中的三个LinkButton控件,我想在后面的代码中使用switch语句隐藏或显示它们。
<CommandItemTemplate>
<LinkButton runat="server" ID="approveAllLink" Text="Approve All" >
</LinkButton>
<LinkButton runat="server" ID="approveLink" Text="Approve" >
</LinkButton>
<LinkButton runat="server" ID="rejectLink" Text="Reject" >
</LinkButton>
</CommandItemTemplate>
无论如何解决这个案子?
答案 0 :(得分:13)
这个怎么样?
GridItem cmdItem = RadGrid1.MasterTableView.GetItems(GridItemType.CommandItem)[0];
LinkButton approveAllLink = cmdItem.FindControl("approveAllLink") as LinkButton;
LinkButton approveLink = cmdItem.FindControl("approveLink") as LinkButton;
LinkButton rejectLink= cmdItem.FindControl("rejectLink") as LinkButton;
// Your switch logic here
答案 1 :(得分:3)
确保将MasterTableView的CommandItemDisplay属性设置为与None不同的值。否则,从GetItems方法返回的命令项数组将为空。
答案 2 :(得分:2)
在网格的ItemCreated事件期间隐藏或显示CommandItem中的控件:
protected void RadGrid1_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item.ItemType == GridItemType.CommandItem)
{
var approveAllLink = (LinkButton) e.Item.FindControl("approveAllLink");
var approveLink = (LinkButton)e.Item.FindControl("approveLink");
var rejectLink = (LinkButton)e.Item.FindControl("rejectLink");
// Your switch logic here
}
}