This may be more of a bug, but Kendo does not allow you to call showColumn() or hideColumn() when the grid itself is not visible. If you look in the showColumn / hideColumn methods in kendo.grid.js, we can see that there is a .filter(":visible") on the columns in place. Unfortunately for us, our Kendo grid isn't always visible (it can be collapsed: think $.slideUp). Instead, we get an error saying (on the following line) that "style" could not be set on undefined - because our hidden grid's hidden column header doesn't pass the :visible filter.
Thanks!