2010-04-22 8 views
0

Я пытаюсь показать богатый текст внутри столбца WPF DataGrid (из WPF Toolkit). Что-то вроде этого:Есть ли способ отображения форматированного текста в WPat datagrid?

Имя: Боб
Название: Доктор

Я создаю объект данных программно в коде с помощью свойства строки. И я хочу, чтобы эта строка содержала богатый текст и привязывала его к содержимому столбца. Это возможно?

Очень понравилась бы любая помощь!

ответ

2

Используйте DataGridTemplateColumn:

<dg:DataGridTemplateColumn Header="Info"> 
    <dg:DataGridTemplateColumn.CellTemplate> 
     <DataTemplate> 
      <Grid> 
       <Grid.RowDefinitions> 
        <RowDefinition /> 
        <RowDefinition /> 
       </Grid.RowDefinitions> 
       <Grid.ColumnDefinitions> 
        <ColumnDefinition /> 
        <ColumnDefinition /> 
       </Grid.ColumnDefinitions> 
       <TextBlock Text="Name:" FontWeight="Bold" Grid.Row="0" Grid.Column="0" /> 
       <TextBlock Text="{Binding Name}" Grid.Row="0" Grid.Column="1" /> 

       <TextBlock Text="Title:" FontWeight="Bold" Grid.Row="1" Grid.Column="0" /> 
       <TextBlock Text="{Binding Title}" Grid.Row="1" Grid.Column="1" /> 
      </Grid> 
     </DataTemplate> 
    </dg:DataGridTemplateColumn.CellTemplate> 
</dg:DataGridTemplateColumn> 
+0

Спасибо, но, как я уже говорил выше, я создаю объект данных программно в коде. Я хочу построить такую ​​строку: "Имя: Bob \ n Название: Врач" и назначить его столбцу. Это возможно? –

+0

Это может работать, если вы создаете объект данных программно. Просто убедитесь, что тип вашей коллекции имеет свойства Name и Title. Я обновил пример, чтобы показать, как он может привязываться к ним. – RandomEngy

+0

Спасибо, я понял, что вы можете сделать это так, но я надеялся, что если имя и название не были 2 заданными свойствами, но их могло бы быть любое количество, было бы здорово создать макет программно и не зависеть от предустановленный шаблон. Это возможно? –