本帖最后由 zh2yu 于 2011-05-13 10:14:11 编辑

解决方案 »

  1.   

    从数据库里读取出来就是Red或者是其他某一种颜色,这样存有问题吗?
    你存为0f0f0f这种格式试试。 数据库存Red ForeColor不认。
      

  2.   

    颜色前面别忘记加#  例如#FFFF99这样 
    绑定的时候对单引号或者双引号有特需的要求。 双引号在有点属性下解析不出来。所以用单引号。
      

  3.   


    我试过了,用这种 ForeColor='<%#Eval("Font_color") %>'绑定方式报错,我用 ForeColor='"<%#Eval("Font_color") %>"'绑定方式,颜色没有绑定到还是被莫名其妙的负了一个黑色
      

  4.   

    刚才我说错了。数据库存Red ForeColor不认 (这里是认)protected void Page_Load(object sender, EventArgs e)
        {
        DataTable tblDatas = new DataTable("Datas");
        DataColumn dc = null;
        dc = tblDatas.Columns.Add("ID", Type.GetType("System.Int32"));
        dc.AutoIncrement = true;//自动增加
        dc.AutoIncrementSeed = 1;//起始为1
        dc.AutoIncrementStep = 1;//步长为1
        dc.AllowDBNull = false;//    dc = tblDatas.Columns.Add("Font_color", Type.GetType("System.String"));
        dc = tblDatas.Columns.Add("Description", Type.GetType("System.String"));    DataRow newRow;
        newRow = tblDatas.NewRow();
        newRow["Font_color"] = "#FFFF99";
        newRow["Description"] = "我很喜欢";
        tblDatas.Rows.Add(newRow);    newRow = tblDatas.NewRow();
        newRow["Font_color"] = "blue";
        newRow["Description"] = "我很喜欢";
        tblDatas.Rows.Add(newRow);    rptTag.DataSource = tblDatas;
        rptTag.DataBind();
        }
        protected void rptTag_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if(e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.Item)         {
                DataRowView dr = e.Item.DataItem as DataRowView;
                LinkButton lb = e.Item.FindControl("lbtType") as LinkButton;            lb.Style.Add("color", dr["Font_color"].ToString());
            }
        }<asp:Repeater ID="rptTag" runat="server" onitemdatabound="rptTag_ItemDataBound" >
      <ItemTemplate>
      <asp:LinkButton ID="lbtType" runat="server" CommandName='<%#Eval("ID")%>'   >  
      <%#Eval("Description")%>
      </asp:LinkButton>
      </ItemTemplate>
    </asp:Repeater>
    用这种方法
      

  5.   

    注意:单引号与双引号的使用。方法DataBinder.Eval()内只能用双引号(C#语法规则),则在HTML中就Property=Value时,value两测就要使用单引号。 
      

  6.   


    我用Repeater 直接 ForeColor='<%#Eval("Font_color") %>' 绑定不行吗
      

  7.   


    我要的不是你这种,我要的是当linkbutton被点击了,让他把背景色读出来