摘要:我只需要为具有该角色的用户(此处为 manager )显示“新建”按钮。当新按钮放在命令列标题中时,我不知道该怎么做。
详情:我正在使用DevExpress 14.2。当ASPxGridView
中的New按钮在行的命令列中使用时,我可以在CommandButtonInitialize事件处理程序中隐藏它:
protected void gv_CommandButtonInitialize(object sender, ASPxGridViewCommandButtonEventArgs e)
{
ASPxGridView grid = sender as ASPxGridView;
switch (e.ButtonType)
{
case ColumnCommandButtonType.New:
e.Visible = Page.User.IsInRole("manager");
break;
...
}
但是,当属性ShowNewButtonInHeader
设置为true时,它应该以不同的方式完成。我找到了一些使用Init
或Load
项的提示。但是,我不知道该怎么做。
答案 0 :(得分:0)
我找到了方法。如果你知道更好的方法,我会接受你的回答:
protected void gv_Init(object sender, EventArgs e)
{
ASPxGridView grid = sender as ASPxGridView;
foreach (GridViewColumn col in grid.Columns)
{
if (col is GridViewCommandColumn && !Page.User.IsInRole("manager"))
{
(col as GridViewCommandColumn).ShowNewButtonInHeader = false;
break;
}
}
}