I know that this is a very old post, but I have seen it referenced a few times and ran into it myself as a suggested solution. But I have found an easier method using a BooleanToVisibility converter. And this is a pure XAML solution.
<telerik:RadGridViewx:Name="gridView" ItemsSource="{Binding Path=PolicyTypeList}" IsReadOnly="True"CanUserSortGroups="False" ShowGroupPanel="False"EnableLostFocusSelectedState="True" IsFilteringAllowed="False" ColumnWidth="*" RowIndicatorVisibility="Collapsed"AutoGenerateColumns="False"><telerik:RadGridView.ChildTableDefinitions><telerik:GridViewTableDefinition/></telerik:RadGridView.ChildTableDefinitions><telerik:RadGridView.HierarchyChildTemplate><DataTemplate> <Grid> <Grid.RowDefinitions> <RowDefinitionHeight="Auto"/> <RowDefinitionHeight="Auto"/> </Grid.RowDefinitions> <TextBlockGrid.Row="0" Visibility="{Binding ItemsSource.IsEmpty, Converter={StaticResource BoolToVisible},ElementName=childGrid}" >No Policy Applications Found!</TextBlock> <telerik:RadGridViewName="childGrid"Grid.Row="1" Visibility="{Binding ItemsSource.IsEmpty, Converter={StaticResource BoolToVisible},ConverterParameter=Invert,ElementName=childGrid}" ItemsSource="{Binding Path=ChildRecords}" IsReadOnly="True"CanUserSortGroups="False" ShowGroupPanel="False"EnableLostFocusSelectedState="True" IsFilteringAllowed="False" Width="{Binding ActualWidth,RelativeSource={RelativeSource AncestorType={x:Type telerik:RadGridView}}}" ColumnWidth="*" RowIndicatorVisibility="Collapsed"AutoGenerateColumns="False"> <telerik:RadGridView.Columns> </telerik:RadGridView.Columns> </telerik:RadGridView> </Grid></DataTemplate></telerik:RadGridView.HierarchyChildTemplate><telerik:RadGridView.Columns></telerik:RadGridView.Columns></telerik:RadGridView>