I am setting image in particular cells of grid on some condition but the images is repeated or showed as tiles not single image is shown, i want to show just one, i am unable to figure out why this is happening.
Screen shot:
Here is my code:
private void PendingTask_RowCellStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e)
{
try
{
if (e.RowHandle < 0)
return;
int con = PendingTaskGridView.SortedColumns.Count;
DataModel.TaskToConfirm task = this.PendingTaskGridView.GetRow(e.RowHandle) as DataModel.TaskToConfirm;
if (task == null)
return;
if (e.Column.Name.Equals("gridColBilling", StringComparison.InvariantCultureIgnoreCase))
{
SetTaskStatusColor(e, task);
//SetTimeDifferenceColor(e, task);
}
if (e.Column.Name.Equals("gridColPunctuality", StringComparison.InvariantCultureIgnoreCase))
{
SetPunctualityColor(e, task);
//SetTimeDifferenceColor(e, task);
}
if (e.Column.Name.Equals("gridColAttendance", StringComparison.InvariantCultureIgnoreCase))
{
SetAttendanceColor(e, task);
//SetTimeDifferenceColor(e, task);
}
}
catch (Exception ex)
{
ApplicationExceptions.HandleAppExc(ex);
}
}
Here is inner methods :
private void SetTaskStatusColor(DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e, DataModel.TaskToConfirm task)
{
e.Appearance.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF");
if (task.BillingConfirmed)
e.Appearance.Image = imageListGrid.Images[0];
else
e.Appearance.Image = imageListGrid.Images[1];
}
private void SetPunctualityColor(DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e, DataModel.TaskToConfirm task)
{
e.Appearance.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF");
if (task.PunctualityStatus == (int)ePunctuality.Extra)
e.Appearance.Image = CareGiver.Properties.Resources.Cancelled_Image;
else if (task.PunctualityStatus == (int)ePunctuality.Less)
e.Appearance.Image = CareGiver.Properties.Resources.Update_CSD;
else
e.Appearance.Image = CareGiver.Properties.Resources.Category_Green;
}
private void SetAttendanceColor(DevExpress.XtraGrid.Views.Grid.RowCellStyleEventArgs e, DataModel.TaskToConfirm task)
{
e.Appearance.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF");
if (task.AttendanceType == 2)
e.Appearance.Image = imageList1.Images["auto"];
else if (task.AttendanceType == 1)
e.Appearance.Image = imageList1.Images["manual"];
else if (task.AttendanceType == 0)
e.Appearance.Image = imageList1.Images["default"];
}