Возможно ли в Silverlight привязать текст заголовка столбца DataGrid к строке ресурса? - PullRequest
2 голосов
/ 07 января 2009

Мне нужно привязать текст заголовка столбца DataGrid к строке ресурса в файле XAML. Кто-нибудь знает, возможно ли это?

Определение заголовка столбца выглядит следующим образом, но я бы хотел заменить «MyHeaderText» текстом из файла ресурсов: -

<data:DataGridTextColumn Header="MyHeaderText" Binding="{Binding SomeData}" IsReadOnly="True"/>

Строка Resource будет настроена в разделе UserControl.Resources.

Ответы [ 3 ]

1 голос
/ 15 января 2009

Область представления заголовка ограничена. Вы можете достичь этого, используя строку вместо UIElement. Убедитесь, что у вас есть xmlns для пространства имен «System» в вашем файле xaml, например:

xmlns:sys="clr-namespace:System;assembly=mscorlib"

Затем определите следующее в разделе ресурсов вашего UserControl:

<sys:String x:Key="MyHeader">My Header Text</sys:String>

Тогда вы можете сделать в основном то, что сказал Sorskoot, и не получите сообщение об ошибке:

<data:DataGridTextColumn Header="{StaticResource MyHeader}" Binding="{Binding SomeData}" IsReadOnly="True" />
0 голосов
/ 15 января 2009

Обратите внимание, что вы можете сделать больше, чем просто использовать текстовое значение, если хотите, но вам нужно использовать свойство HeaderStyle вместо свойства Header.

0 голосов
/ 07 января 2009

Вы пробовали что-нибудь вроде:

<data:DataGridTextColumn Header="{StaticResource SomeData}" 
                         IsReadOnly="True"/>

Где SomeData - ваш ресурс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...