asp.net - 如何在 DataGrid 中的按钮上设置 CssClass

标签 asp.net gridview .net-4.0

我在 DataGrid 中有一个 ButtonColumn:

<asp:ButtonColumn HeaderText="Edit" ButtonType="PushButton" Text="Edit" />

如何设置它的 CSS 类?

我能想到的唯一方法是 Hook RowDataBound 事件:

Protected Sub dgSchedule_ItemDataBound(sender As Object, e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dgSchedule.ItemDataBound
    If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
        DirectCast(e.Item.Cells(6).Controls(0), Button).CssClass = "confirmButton"

    End If
End Sub

我只是觉得必须有一种更简洁的方法。如果我添加/删除列会发生什么,我必须回到这里并记住更改第 6 列...

我尝试使用 TemplateColumn 和常用的 asp:Button - 这有效,但单击它并没有触发我需要触发的网格的 ItemCommand 事件.

最佳答案

我已经通过使用 GridView 而不是 DataGrid 解决了这个问题。实际上不知道为什么我首先使用 DataGrid。

这提供了一个附加属性ControlStyle-CssClass

例如

<asp:ButtonField HeaderText="Edit" ButtonType="Button" Text="Edit" ControlStyle-CssClass="confirmButton" />

关于asp.net - 如何在 DataGrid 中的按钮上设置 CssClass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5351064/

相关文章:

.net - 复制 app.config 进行部署

当谷歌机器人或其他爬虫发出请求时,asp.net避免在线用户计数增加

android - 使用 Android GridView 的键盘导航不会滚动网格

javascript - Ajax 调用仅进行一次 ASP.Net MVC5

Android GridView 双指缩放

c# - 如何检索部分存储在数据库中的日期列表并将其绑定(bind)在c#中的gridview中

c# - 读取没有任何部分的 ini 文件?

c# - 我如何尝试创建一个文件,并返回一个值来指示它是否已创建?

c# - 使用工厂的动态继承

asp.net - 记录哪个是最好的方法