我有一个处于插入模式的 DetailsView:
<asp:CommandField ShowInsertButton="True" ButtonType="Button" ControlStyle-CssClass="myButton" InsertText="My Insert text" />
当然,插入/取消按钮的样式相同。
是否可以将这两个分别设置为一个蓝色和一个黄色?
在 FormView 中,您可以像这样单独定义按钮:
<asp:Button CommandName="Insert" Text="Insert" class="myButtonStyle1" ID="myButtonID1" runat="server" CausesValidation="True" />
<asp:Button CommandName="Cancel" Text="Cancel" class="myButtonStyle2" ID="myButtonID2" runat="server" CausesValidation="False" />
DetailsView 有类似的东西吗?
最佳答案
最简单的解决方案是将“新建、插入、取消”CommandField 转换为 TemplateField。如果您使用 WYSIWYG 编辑器,则在 OK 按钮上方有一个按钮。这将生成以下(经过审查的)代码,您可以轻松设置样式。
<asp:TemplateField ShowHeader="False">
<InsertItemTemplate>
<asp:Button ID="LinkButton1" runat="server" CssClass="insertButton" CausesValidation="True" CommandName="Insert" Text="Insert" />
<asp:Button ID="LinkButton2" runat="server" CssClass="cancelButton" CausesValidation="False" CommandName="Cancel" Text="Cancel" />
</InsertItemTemplate>
</asp:TemplateField>
注意:我使用 CSS 类名称“insertButton、cancelButton”向下面的按钮添加了 CssClass 属性,它们都可以在您的样式表中进行配置。
更多注意事项:
当需要按钮时(不是 linkButtons)不要使用结束标签 (
</asp:button>
) - 用内联替换它/
标记。否则,它不会起作用。当使用 Insert only 模式时,截尾的 ItemTemplate 不 需要——删除它。
避免使用 ControlStyle 控件,否则可能会导致类否决。
关于c# - 如何为 DetailsView 的插入和取消按钮分配不同的样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10718712/