You can subscribe to the grid.Model.QueryCellInfo event. In your handler, try code like below to disable the B2 cell when B1 is false.
if(e.ColIndex > 0 && e.RowIndex > 0)
{
int col = this.grid.Binder.NameToColIndex("B2");
if(col == e.ColIndex)
{
col = this.grid.Binder.NameToColIndex("B1");
object o = this.grid[e.RowIndex, col].CellValue;
if(o != null && !(bool)o)
{
e.Style.Enabled = false;
}
}
}