Flexgrid row headers

HTML

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdn.grapecity.com/wijmo/5.latest/styles/wijmo.min.css">
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.min.js"></script>
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.grid.min.js"></script>
<script src="https://cdn.grapecity.com/wijmo/5.latest/controls/wijmo.input.min.js"></script>
<div id="gridDefault">
</div><br>
<div class="header">headerVisibility:</div>
<div id="combo">
</div><br>

CSS

body {
    margin: 20px;
}

.wj-flexgrid {
    max-height: 250px;
    width: auto;
}

.header {
    margin-top: 20px;
    display: inline-block;
    width: 150px;
    text-align: right;
    font-weight: normal;
}

JavaScript

onload = function() {

    // default grid
    var gridDefault = new wijmo.grid.FlexGrid('#gridDefault', {
        itemsSource: getData(),
        headersVisibility: 'All',
        itemFormatter: function(panel, row, col, cell) {
        
        	// add row headers using id
        	if(panel.cellType == wijmo.grid.CellType.RowHeader) {
            	let data = this.getCellData(row, col);
                panel.setCellData(row, col, data);
            }
            
            // add column name for row headers
            if(panel.cellType == wijmo.grid.CellType.TopLeft) {
            	let colName = this.columns.getColumn('id').header;
                panel.setCellData(row, col, colName);
            }
        }
    });
    gridDefault.columns.getColumn('id').visible = false;

    // combo box
    var combo = new wijmo.input.ComboBox('#combo', {
        itemsSource: 'None,Column,Row,All'.split(','),
        selectedIndexChanged: function(sender, e) {
            gridDefault.headersVisibility = sender.selectedItem
        },
        selectedItem: 'All'
    })

    // create some random data
    function getData() {
        var countries = 'US,Germany,UK,Japan,Italy,Greece'.split(','),
            data = [];
        for (var i = 0; i < 200; i++) {
            data.push({
                id: i,
                country: countries[i % countries.length],
                active: i % 5 != 0,
                downloads: Math.round(Math.random() * 200000),
                sales: Math.random() * 100000,
                expenses: Math.random() * 50000
            });
        }
        return data;
    }
}