更改数值C#的字体颜色

时间:2014-03-06 05:20:59

标签: c# asp.net

尝试更改数值的字体颜色,但收到错误:输入字符串格式不正确。

例如代码:

DataTable dt = PDSData.getPDSBndl(bndlId, 'N');
string qty = "<font color='red'><i><b>" + dt.Rows[i]["qty"].ToString() + "</b></i></font>";
dt.Rows[i]["qty"] =Convert.ToInt32(qty); //@ this line Getting error.

我尝试将字符串转换为int,但没有希望。

5 个答案:

答案 0 :(得分:2)

您无法将bgfbgb56ngfngn之类的内容解析为int。 dataTable本身只包含数据,没有格式化信息。

您需要更改视图(ASP.NET WebForm或razor视图,无论您使用什么)来处理显示。

答案 1 :(得分:1)

正如您在回答问题时提到的评论
“将数据表绑定到转发器控件rpt.DataSource = dt; rpt.DataBind(); - user1676709”
您正在使用转发器,那么您可以这样做..

 <span style="font-weight:bold;font-style:italic;color:#ff0000;"><%# Eval("qty") %></span>

答案 2 :(得分:0)

一些问题:

  1. 您的变量数量永远不会是整数,因为您要向其添加HTML标记。
  2. 您不对字符设置应用于变量。您可以在正在使用的UI元素上执行此操作。

答案 3 :(得分:0)

字符串 qty 持有像'<font color='red'><i><b>" + dt.Rows[i]["qty"].ToString() + "</b></i></font>'&amp;你试图强制转换为无效的int32。如果 qty 持有字符串值,如“9”或“10”,它将转换它,但在您的情况下,它将给出错误。使用Int32.TryParse检查字符串是否正确&amp;在out参数中,如果tryparse返回true,您将获得转换后的值。

答案 4 :(得分:0)

如果您希望它在gridview中显示,请在设计中进行管理。 如果您有条件设置颜色,则管理网格视图的itemdatabound事件。