Estilo de configuración basado en la existencia de un tipo de antepasado

Tengo 2 conjuntos de bloques de texto, algunos de ellos están en un control de elemento y otros no, quiero crear un estilo (solo basado en el tipo) que establece el fondo del bloque de texto si su antecesor es un Control de elemento.
Puedo hacerlo mediante el siguiente código, pero el problema es que en el registro (y en la ventana de salida) se mostrará un mensaje de error de vinculación de datos debido a los bloques de texto que no tienen Control de elementos como antecedente. ¿Hay alguna forma mejor de hacer esta tarea y evitar este mensaje de error?

<Grid>
    <Grid.Resources>
        <local:HasAncestorConverter x:Key="HasAncestorConverter" />
        <Style TargetType="TextBlock">

            <Style.Triggers>
                <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}, Converter={StaticResource HasAncestorConverter}}" Value="True">
                    <Setter Property="Background"
                            Value="{Binding Tag,
                            RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}" />

                </DataTrigger>
            </Style.Triggers>

        </Style>
    </Grid.Resources>
    <StackPanel>
        <TextBlock Text="Out of ItemControl" />
        <ItemsControl Tag="Blue" >
            <TextBlock Text="Inside of ItemControl" />
        </ItemsControl>
    </StackPanel>

</Grid>    

Convertidor:

class HasAncestorConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        return value != null;
    }

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}

Mensaje de error:

System.Windows.Data Error: 4: No se puede encontrar el origen para el enlace con la referencia 'RelativeSource FindAncestor, AncestorType =' System.Windows.Controls.ItemsControl ', AncestorLevel =' 1 ''. BindingExpression: Path =; DataItem = null; el elemento de destino es 'TextBlock' (Name = ''); la propiedad de destino es 'NoTarget' (tipo 'Objeto')

Respuestas a la pregunta(4)

Su respuesta a la pregunta