在GridView中要使成绩一列小于60字体展示红色时出错
在GridView中要使成绩一列小于60字体显示红色时出错
代码如下:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (Convert.ToInt32(e.Row.Cells[6].Text.Trim()) <= 0
|| Convert.ToInt32(e.Row.Cells[6].Text.Trim()) > 60)
{
e.Row.Cells[6].ForeColor = System.Drawing.Color.Red;
}
}
提示输入字符串出错。
------解决方案--------------------
e.Row.Cells[6].Text.Trim()是整型的字符串嘛?
看看e.Row.Cells[6].Text.Trim()值是什么?
------解决方案--------------------
代码如下:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (Convert.ToInt32(e.Row.Cells[6].Text.Trim()) <= 0
|| Convert.ToInt32(e.Row.Cells[6].Text.Trim()) > 60)
{
e.Row.Cells[6].ForeColor = System.Drawing.Color.Red;
}
}
提示输入字符串出错。
------解决方案--------------------
e.Row.Cells[6].Text.Trim()是整型的字符串嘛?
看看e.Row.Cells[6].Text.Trim()值是什么?
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
string test=e.Row.Cells[6].Text.Trim();//看看这里的值是什么?
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (Convert.ToInt32(e.Row.Cells[6].Text.Trim()) <= 0
------解决方案--------------------
Convert.ToInt32(e.Row.Cells[6].Text.Trim()) < 60)
{
e.Row.Cells[6].ForeColor = System.Drawing.Color.Red;
}
}
------解决方案--------------------
<form id="form1" runat="server">
<div>
<asp:GridView ID="gv" runat="server" AutoGenerateColumns="false" onrowdatabound="gv_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblGrade" runat="server" Text='<%#Eval("Grade") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</form>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGrade();
}
}
protected void BindGrade()