WPF: ¿Cómo hacer que RichTextBox se parezca a TextBlock?

¿Cómo puedo hacerRichTextBox sin margen, borde, relleno, etc.? En otras palabras, mostrar contenido de la misma manera queTextBlock lo hace ? He intentado esto:

<RichTextBox Margin="0" Padding="0" Grid.Row="0" BorderThickness="0" >
    <FlowDocument >
        <Paragraph>LLL</Paragraph>
    </FlowDocument>
</RichTextBox>
<TextBlock>LLL</TextBlock>

Pero el resultado produce todavía no es lo que quiero:

Todavía hay algo de espacio antes del contenido del documento (y también tal vez después, en la parte superior o inferior del documento ...). Como puedo quitarlo

Si estás interesado, ¿por qué necesito esto? Estoy tratando de hacer Respuesta de H.B. a mi preguntaCrear editor de acordes de guitarra en WPF trabajar coninterletrad y no quiero tener un espacio antinatural entre los personajes.

Edita

Así que no esControlTemplate al menos no solo eso porque el siguiente código producirá exactamente el mismo resultado (como el de la imagen de arriba):

<RichTextBox Margin="0" Padding="0" Grid.Row="0" BorderThickness="0">
    <RichTextBox.Template>
        <ControlTemplate>
            <ScrollViewer Padding="0" Margin="0" x:Name="PART_ContentHost"/>
        </ControlTemplate>
    </RichTextBox.Template>
    <FlowDocument PagePadding="0">
        <Paragraph Padding="0" Margin="0" >LLL</Paragraph>
    </FlowDocument>
</RichTextBox>

Y pensé que esta sería una pregunta fácil de responder ... Observación interesante: cuando tengo un conjunto de plantillas y configuroPagePadding="0" enFlowDocument it muestra el diseño que quiero en el diseñador de VisualStudio - hasta que ejecuto la demo. En la demostración, vuelve a estar mal ... Y cuando cierro la demostración, vuelve a estar mal en el diseñador. Este es un pequeño error de VS o está realmente configurado en el diseño correcto por un tiempo, pero luego algo cambia el valor dePagePadding volver a algún valor incorrecto?

Editar # 2

a respuesta editada de @Daniel Rose tampoco me funciona. Esto es XAML:

<FlowDocument PagePadding="{Binding PagePadding}">
    <Paragraph x:Name="paragraph" Padding="0" 
        TextIndent="0"  Margin="0,0,0,0" >hello</Paragraph>
</FlowDocument>

Y esto está en el código:

public static DependencyProperty PagePaddingProperty =
            DependencyProperty.Register("PagePadding", typeof(Thickness),   typeof(EditableTextBlock),
            new PropertyMetadata(new Thickness(0)));

public Thickness PagePadding {
    get { return (Thickness)GetValue(PagePaddingProperty); }
    set { SetValue(PagePaddingProperty, value); }
}

No hay cambios en el resultado. Queda espacio.

Editar # 3

Después de agregar el enlace bidireccional como Daniel Rose sugirió en su última edición, funciona. Aún así, realmente no creo que esté muy claro (tener una propiedad de dependencia porque necesito mantenerPagePadding en valor 0). @ Creo que es un truco: solución temporal de errores. Si alguien tiene una mejor solución, compártala.

Obviamente "cambiandoPagePadding "deFlowDocument a0,5 es un error. Si alguien tiene una cuenta de MSDN, sería bueno que informaran este error.

Respuestas a la pregunta(3)

Su respuesta a la pregunta