One way I think you can do this is to set the GridStyleInfo.Enabled = false for the rows in the embedded GridControl (of the GridListControl) that you want to ignore. Then override the OnMouseUp method of the GridListControl to ignore the mouseup for the disabled rows (this will prevent the dropdown from closing).
So, in your formload, hook the QueryCellInfo event for the embedded grid, and use that event to mark the rows you want to be disabled.
//in form load
this.gridListControl1.Grid.QueryCellInfo += new Syncfusion.Windows.Forms.Grid.GridQueryCellInfoEventHandler(grid_QueryCellInfo);
//the handler
private void grid_QueryCellInfo(object sender, Syncfusion.Windows.Forms.Grid.GridQueryCellInfoEventArgs e)
{ //ID the rows to be disabled somehow...
if(e.RowIndex > 0 && e.RowIndex % 3 == 0)
{
e.Style.BackColor = Color.Gray;
e.Style.Enabled = false;
e.Handled = true;
}
}
//derived class with override
public class MyGridListControl : GridListControl
{
protected override void OnMouseUp(System.Windows.Forms.MouseEventArgs e)
{
if(e.Button == MouseButtons.Left)
{
int row = this.Grid.TopRowIndex + this.Grid.ViewLayout.PointToClientRow(new Point(e.X, e.Y)) - 1;
if( this.Grid[row, 1].Enabled == false)
return;
}
base.OnMouseUp(e);
}
}