更改部分 gridview 模板字段的颜色

Change the color of a portion of a gridview templatefield

我在 gridview 中有一个模板字段来显示联系人详细信息。我设法格式化了静态部分,即 'Contact'、'Position'、'Number' 和 'Mobile'。

联系人:迪特
职位:代码骑师
号码: 061 323 9484
手机: 027 450 2345

我的代码如下:
<asp:TemplateField HeaderText="Contact Details">
<ItemTemplate>
<asp:Label ID="txtContactDetails" runat="server" CssClass="right" TextMode="MultiLine" HtmlEncode="false" Text='<%# String.Format("<b>Contact: </b>{0}", Eval("ContactName")) +
If(Eval("ContactPosition").ToString = "", "", String.Format("</br><b>Position: </b>{0}", Eval("ContactPosition"))) +
String.Format("</br><b>Number: </b>{0}", Eval("ContactNumber")) +
If(Eval("MobileNumber").ToString = "", "", String.Format("</br><b>Mobile: </b>{0}", Eval("MobileNumber")))%>'
ToolTip='<%# Bind("ContactName")%>'
BorderStyle="None" Width="100%" />
</ItemTemplate>
<ItemStyle CssClass="right" />
</asp:TemplateField>

我不知道这是否可以做到,但我想改变数字的颜色(即只有 Eval("ContactNumber"))例如橘子。

虽然 OnRowDataBound 事件是根据其数据值自定义 Gridview 的任何行的完美事件,但您的要求可以与仅在标记代码中略有不同。

Text='<%# String.Format(@"</br><b>Number: </b>
<span class=""contactNumber"">{0}</span>", Eval("ContactNumber"))%>'

请注意 @ as:String.Format(@" 的使用,并在 class 属性周围使用双引号 "" 两次 as:

<span class=""contactNumber"">

现在,无论是在您的 CSS 文件中还是在您的标记文件中内联,只需指定您要使用的颜色,该颜色将仅应用于 ContactNumber。

内联 CSS 示例:

<style type="text/css">
  .contactNumber {

    color: orange;

  }
  </style>