Does anyone have an idea on how to hide the grid row at runtime?
You cannot set its visibility, the only way to do this is to set its height to 0. Assuming the grid name is LayoutRoot, and you want to hide the first row:
LayoutRoot.RowDefinitions[0].Height = new GridLength(0);