DeveXpress gridview:更改GridViewCommandColumnCustomButton Image-Url

时间:2013-08-12 13:26:14

标签: asp.net devexpress

所有

我有一个DevXpress gridview,每行包含2个自定义图像按钮:编辑和取消。

在网格中是一个特定列,用于确定是否显示图像按钮。如果列包含5,则不显示按钮。否则总是显示按钮。

如何从后面的代码中访问Image-Url属性,还是必须通过JavaScript?

代码提取重定制按钮定义:

<dxwgv:GridViewCommandColumn ButtonType="Image" Caption="Edit" AllowDragDrop="False" >
  <CustomButtons>
    <dxwgv:GridViewCommandColumnCustomButton ID="EditButton" Text="Click to edit" Image-Url="~/Images/16x16/edit.png" Visibility="AllDataRows" Image-AlternateText="Edit" />
  </CustomButtons>
</dxwgv:GridViewCommandColumn>
<dxwgv:GridViewCommandColumn ButtonType="Image" Caption="Cancel" AllowDragDrop="False">
  <CustomButtons>
    <dxwgv:GridViewCommandColumnCustomButton ID="CancelButton" Text="Click to cancel" Image-Url="~/Images/16x16/delete2.png" Visibility="AllDataRows" Image-AlternateText="Cancel" />
  </CustomButtons>
</dxwgv:GridViewCommandColumn>

任何想法都将不胜感激。对DevXpress来说真的没有多少快乐。

谢谢!

1 个答案:

答案 0 :(得分:1)

这是一种可能性:

        protected void ASPxGridView1_CustomButtonInitialize(object sender, ASPxGridViewCustomButtonEventArgs e)
    {
        int i = Convert.ToInt32((sender as ASPxGridView).GetMasterRowKeyValue());
        if (i == 5)
            e.Image.Url = "images/checkmark.gif";
        else
            e.Image.Url = "images/trash.gif";
    }

然后当然在ASPX文件中你需要添加:

oncustombuttoninitialize="ASPxGridView1_CustomButtonInitialize"