Привязка графических элементов управления в UserControl к другому UserControl и содержащим его элементам управления в WPF - PullRequest
0 голосов
/ 08 августа 2010

У меня есть UserControl1, который представляет собой FormatButtonBar с кнопками форматирования И У меня есть UserControl2, который является DataGrid с RichTextBoxes в качестве редакторов ячеек.

Я хочу повторно использовать UserControl1 в разных местах моего приложения.

Это то, чего я хочу достичь с помощью псевдокода:

<UserControl1>
<ToggleButton Content="bold" IsChecked="{Binding IsTextBold}" Command="EditingCommands.ToggleBold" CommandTarget="{Binding ElementName=UserControl2.MyRichTextBox}" />
</UserControl1>


<UserControl2>
<DataGrid>
   <DataGridCell x:Name="MyRichTextBox" />
</DataGrid>
</UserControl2> 

Вы знаете, как должен выглядеть переплет?

1 Ответ

0 голосов
/ 08 августа 2010

Вам необходимо определить [ContentProperty( "CustomContent" )] в вашем классе UserControl, указав его на пользовательское свойство зависимостей UIElement. Затем в свой UserControl xaml добавьте <ContentControl> и свяжите его свойство Content с вашим пользовательским свойством, например, так:

<ContentControl
    Content="{Binding ElementName=myUserControl, Path=CustomContent}" />
...