Pregunta

Si tengo una plantilla de datos de la siguiente manera:

<DataTemplate DataType="{x:Type vm:EditorTabViewModel}">
    <me:MarkdownEditor 
        TextContent="{Binding 
                          Path=Content, 
                          RelativeSource={RelativeSource AncestorType={x:Type vm:EditorTabViewModel}}}" ... />
</DataTemplate>

Me pregunto por qué la fuente relativa no puede encontrar el EditorTabViewModel? Es sólo en referencia a la plantilla de datos?

ACTUALIZACIÓN 1

La siguiente funciona Tho

<me:MarkdownEditor TextContent="{Binding Path=Content.Content, RelativeSource={RelativeSource Mode=TemplatedParent}}" />

Binding Path=Content.Content
                     ^ Refers to EditorTabViewModel.Content
             ^ refers to EditorTabViewModel

¿Hay un margen de beneficio más ituitive? lol, había pensado RelativeSource={RelativeSource Mode=TemplatedParent}}" ya se refiere a EditorTabViewModel en un primer momento

¿Fue útil?

Solución

Dado que el DataTemplate es para objetos de tipo EditorTabViewModel, su DataContext será ya un EditorTabViewModel. Por lo que no es necesario establecer una fuente en absoluto:

TextContent="{Binding Content}" ... />
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top