セルの値に応じて、radgrid のセルをフォーマット (背景色、前色、フォント スタイル) する必要があります。
たとえば、値が負の場合、そのセルの前の色を赤に設定します。
これをどのように達成できるか教えてください。
セルの値に応じて、radgrid のセルをフォーマット (背景色、前色、フォント スタイル) する必要があります。
たとえば、値が負の場合、そのセルの前の色を赤に設定します。
これをどのように達成できるか教えてください。
protected void grdName_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = (GridDataItem)e.Item;
if (Convert.ToInt32(((DataRowView)item.DataItem)["Column"]) < value)
{
TableCell cell = item["Column"];
cell.BackColor = Color.PeachPuff;
}
}
}
aspx ページの radGrid 宣言に onItemDataBound="Data_OnitemDataBound" 行を追加します。
次に、これをコード ビハインドに追加します。Cells[] の数値は、変更または検証する列のインデックスです。
protected void Data_OnItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = (GridDataItem)e.Item;
if (Convert.ToDecimal(item.Cells[3].Text) < 0)
{
item.Cells[3].ForeColor = System.Drawing.Color.Red;
}
}
}
以下のコードは、RadGrid 内のすべてのセルに使用できます。
protected void RadGrid_ItemDataBound(object sender, GridItemEventArgs e)
{
foreach (GridDataItem dataItem in RadGridProduct.MasterTableView.Items)
{
int cellCount = dataItem.Cells.Count;
foreach (GridTableCell item in dataItem.Cells)
{
if (item.Text == null ||Convert.ToInt32(item.Text) < 0 )
item.BackColor = System.Drawing.Color.Brown;
}
}
}