private void SetupFilteredAlternatingRowColors(DataGridView wingrid, bool somethingVisible, bool somethingHidden)
{
if (wingrid != null)
{
if (somethingHidden && somethingVisible && this._gridOriginalAlternatingStyle != null)
{
bool defaultStyle = true;
for (var i = 0; i < wingrid.Rows.Count; i++)
{
//this.DoEvents();
if (this._cancelCurrentFilter)
break;
var row = wingrid.Rows[i];
if (!row.Visible) continue;
var currentStyle = (defaultStyle) ? wingrid.DefaultCellStyle : this._gridOriginalAlternatingStyle;
defaultStyle = !defaultStyle;
foreach (DataGridViewCell cell in row.Cells)
{
cell.Style.BackColor = currentStyle.BackColor;
cell.Style.ForeColor = currentStyle.ForeColor;
}
}
}
else
{
foreach (DataGridViewRow row in wingrid.Rows)
{
//this.DoEvents();
foreach (DataGridViewCell cell in row.Cells)
cell.Style = null;
}
this.SetAlternatingStyle(wingrid, this._gridOriginalAlternatingStyle);
}
}
}