[C#][WebForm]如何讓ReportView識別Html

[C#][WebForm]如何讓ReportView識別Html

相信大家在使用ReportView開發報表時,一定都會遇到格式化報表相關內容需求,

好比一張各家業者兩年度收費比較報表,如果今年收費金額較去年上升使用紅色表示、持平使用藍色表示、下降使用綠色表示,

當下自己很直覺想塞Html Tag來完成這張報表,

翻了一下MSDN得知ReportView有支援部分Html Tag(好家在..XD),自己記錄一下。

 

 

1.建立預留位置。

image

 

2.選取HTML。

image

 

TablePay.cs(這裡我隨便塞入100筆假資料)

		public DataTable QryData()
		{
		DataTable dt = new DataTable();
		// Query the Database..
		dt.Columns.Add( "SMONEY", typeof( double ) );
		dt.Columns.Add( "EMONEY", typeof( double ) );
		dt.Columns.Add( "RATE", typeof( string ) );
		object[] values = new object[ dt.Columns.Count ];
		 
		for( int i = 0; i < 100; i++ )
		{
		for( int j = 0; j < values.Length; j++ )
		{
		if( j == 0 )
		values[ j ] = 152.456;
		else if(j==1 && i==5) //持平 
		values[ j ] = 152.456;
		else if (j==1 && i==10) //下降
		values[ j ] = 99.963;
		else if(j==1 && i!=5 && i!=10)
		values[ j ] = 452.8; //上升
		else if( j == 2 )
		{
		double result = Convert.ToDouble( values[ 1 ].ToString() ) - Convert.ToDouble( values[ 0 ].ToString() );
		if(result>0)
		values[ j ] = "<FONT color='red'>" + (result/100) + "% ▲</FONT>";
		else if (result ==0)
		values[ j ] = "<FONT color='blue'>" + (result/100) + "% --</FONT>";
		else
		values[ j ] = "<FONT color='green'>" + (result/100) + "% ▼</FONT>";
		}
		}
		dt.Rows.Add( values );
		}
		return dt;
		}

 

結果:

image

 

 

參考

如何:將 HTML 加入至報表

格式化文字和匯入 HTML