В настоящее время у меня есть шаблон данных, который я применяю к ячейкам, чтобы придать им определенный стиль:
<DataTemplate x:Key="percentageCellContentTemplate4">
<TextBlock VerticalAlignment="Center" Height="17" TextAlignment="Right" Margin="-1,-1,-1,-1" Background="White" Text="{Binding Converter={StaticResource PercentScale4}, ConverterParameter=' \{0:P\}'}" ToolTip="{Binding}"/>
</DataTemplate>
Теперь у меня есть случай, когда мне нужно добавить это как типизированный шаблон в ресурсы datagrid. В настоящее время это работает:
<xcdg:DataGridControl.Resources>
<ResourceDictionary>
<DataTemplate DataType="{x:Type s:Decimal}">
<!-- This is exactly percentageCellContentTemplate4 - if someone can find a way to inherit this dataTemplate, free poutine. -->
<TextBlock VerticalAlignment="Center" Height="17" TextAlignment="Right" Margin="-1,-1,-1,-1" Background="White" Text="{Binding Converter={StaticResource PercentScale4}, ConverterParameter=' \{0:P\}'}" ToolTip="{Binding}"/>
</DataTemplate>
</ResourceDictionary>
</xcdg:DataGridControl.Resources>
Может ли кто-нибудь придумать способ избежать копирования и вставки одного и того же шаблона здесь и подобных мест, где он мне нужен?
Благодарность
1
Alain
30 Авг 2011 в 17:18
2 ответа
Лучший ответ
Как насчет чего-то вроде этого:
<DataTemplate DataType="{x:Type s:Decimal}">
<ContentPresenter ContentTemplate="{StaticResource percentageCellContentTemplate4}" />
</DataTemplate>
Изменить: Протестировал, и вроде работает.
3
H.B.
30 Авг 2011 в 13:48
Хотя я думаю, что ответ H.B. должен сработать, на ум приходят две другие возможности (прямо сейчас у меня нет WPF), которые могут сработать:
- извлеките все вещи, которые вы установили в TextBox, в стиль, который затем можно применить в обеих ситуациях
- определить сам текстовый блок как ресурс и сослаться на него в двух шаблонах
0
flq
30 Авг 2011 в 13:43
Похожие вопросы
Новые вопросы
wpf
Windows Presentation Foundation, или WPF, является подсистемой для визуализации пользовательских интерфейсов в приложениях на основе Windows.