2

データベースから返される文字列値があります。値は常に「赤」または「緑」のいずれかになります。この文字列値に基づいて、リピーターのラベルの前景色を変更しようとしています。値が「赤」の場合、ラベルの前色は赤で、逆も同様です。

ASPページでこのコードを使用してみます:

 ForeColor='<%# Eval("Color")%>'

ただし、流れるエラーが発生します。

Specified cast is not valid.

画像の幅を動的に設定しようとして、以前に同様の問題が発生し、最終的に次のように値をキャストしました。

<asp:Image 
  ID="Image1" 
  runat="server" 
  Width='<%# System.Web.UI.WebControls.Unit.Parse(Eval("ImageSize").ToString()) %>'
  ImageUrl="~/Images/ProgressBar.jpg"/>

問題は、システム カラーで同じ手法をどのように使用するかです。

4

2 に答える 2

7

ForeColorColor文字列ではなくオブジェクトが必要です。

したがって、次を使用できますColorTranslator.FromHtml

 ForeColor='<%# Drawing.ColorTranslator.FromHtml(Eval("Color").ToString())%>'
于 2012-08-22T08:53:19.430 に答える
2

試す

 style='color:<%# Eval("Color")%>' 

代わりは

于 2012-08-22T08:52:30.923 に答える