1

我正在使用里面有一个命令按钮的 DevExpress gridview。我想使用图像而不是它。怎么可能?

到目前为止,我已经尝试了这么多:

GridViewCommandColumn commancol = new GridViewCommandColumn(); 
commancol.ButtonType = ButtonType.Image; 
GridViewCommandColumnButton moveUpBtn; 
moveUpBtn.Image.Url = "~/App_Themes/Images/GridControl/grid-delete.png"; 
commancol.Add(moveUpBtn); 

但它给出了错误。

我想从 .cs 页面而不是 aspx 页面添加下面的方式按钮。所以我试图从代码隐藏中进行上述方式。

<dx:GridViewCommandColumn ButtonType="Image">
            <HeaderTemplate>
            </HeaderTemplate>
            <DeleteButton Visible="true" Text="" Image-Url="grid-delete.png"
                Image-ToolTip="Delete Record">
            </DeleteButton>
        </dx:GridViewCommandColumn>

谢谢

4

4 回答 4

0

您可以像这样使用它,1)在 itemtemplate 中声明imageButton 2)声明commandnamecommandargument 3)声明 getimagepath 4)在 cs 页面 getimage 函数声明为

     <asp:TemplateField HeaderText="Edit" ItemStyle-VerticalAlign="Top">
    <ItemTemplate>
   <asp:ImageButton ID="ibDelete" runat="server" CommandName="Delete" CommandArgument='<%# Bind("") %>'
                            ImageUrl='<%#GetImagePath("delete.png")%>' Width="20" Height="20" OnClick="ibDelete_Click"
                            OnClientClick='<%# Eval("", "return confirm(\"Are you sure to delete - {0} ?\");") %>'
                            ToolTip="Delete Item" />
    </ItemTemplate>




public string GetImagePath(string imgName)
        {
            string Finalurl =  this.TemplateSourceDirectory + "/images/" + imgName;
            return Finalurl;
        }

5) 像这样声明 rowcommand

protected void row_command(object sender, gridviewrowcommand e)
{
     if(e.commandname=="Delete")
      {
           if(e.commandargument!=null)
            {
                  // do the work here
            }
       }
}
于 2012-12-31T10:04:35.807 回答
0

我想从后面的代码中添加一个以下类型的删除命令按钮。而不是从 aspx 页面。

<dx:GridViewCommandColumn ButtonType="Image">
                <HeaderTemplate>
                </HeaderTemplate>
                <DeleteButton Visible="true" Text="" Image-Url="grid-delete.png"
                    Image-ToolTip="Delete Record">
                </DeleteButton>
            </dx:GridViewCommandColumn>
于 2012-12-31T10:11:36.187 回答
0

您可以像下面这样简单地添加CommandColumn,但您应该注意 asp.net 页面事件以使其正确工作。

protected void Page_Init(object sender, EventArgs e)
{
    GridViewCommandColumn column = new GridViewCommandColumn("....");
    column.DeleteButton.Visible = true;
    column.DeleteButton.Image.Url = "set path here";
    column.Visible = true;
    column.VisibleIndex = 2;//place where you want it to display
    ASPxGridView1.Columns.Add(column); 
}
protected void Page_Load(object sender, EventArgs e)
{
   // Bind Data here
    BindData();
}

请参阅Command Columns的文档,然后您还可以获得另一个命令按钮并在运行时根据需要设置它们的属性。

希望这有帮助..

于 2012-12-31T10:25:25.697 回答
0
<dx:GridViewCommandColumn Name="deleteRow" ShowDeleteButton="True" VisibleIndex="3" ButtonType="Image">
                <CustomButtons>
                    <dx:GridViewCommandColumnCustomButton Visibility="AllDataRows" Image-Width="20" Image-Url="~/img/delete-icon.png"
                        Image-Height="20">
                        <Image Height="20px" Width="20px">
                        </Image>
                    </dx:GridViewCommandColumnCustomButton>
                </CustomButtons>
                <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
            </dx:GridViewCommandColumn>
于 2015-08-13T06:52:23.370 回答