Как обернуть текст в Silverlight DataGridTextColumn

Я пытаюсь создать простой DataGrid в бете Silverlight 4, но, может казаться, не выясняю, как получить мой Note столбец к переходу на новую строку.

Таблица представляет примечания, сделанные на порядке, таким образом, они будут иметь переменную длину. я хочу, чтобы ячейка 'Примечания' расширилась вертикально для установки содержанию.

Я нашел многочисленные подобные вопросы, но никакой ответ. Действительно ли там что-то является новым в Silverlight 4, который обратится к этому?

    <data:DataGrid AutoGenerateColumns="False" Name="dataGrid1" IsReadOnly="True">
        <data:DataGrid.Columns>
            <data:DataGridTextColumn Header="Date" Binding="{Binding Date}" />
            <data:DataGridTextColumn Header="User" Binding="{Binding User}" />
            <data:DataGridTextColumn Header="Note" Binding="{Binding Note}"  />
        </data:DataGrid.Columns>
    </data:DataGrid>
16
задан Simon_Weaver 11 December 2009 в 10:39
поделиться

2 ответа

Используйте DataGridTemplateColumn вместо текстового столбца. Имейте там TextBlock с TextWrapping, установленным на true:

   <data:DataGrid x:Name="LayoutRoot" AutoGenerateColumns="False" IsReadOnly="True" RowDetailsVisibilityMode="Visible" >
        <data:DataGrid.Columns>

            <data:DataGridTextColumn Header="Date" Binding="{Binding Date}" />
            <data:DataGridTextColumn Header="User" Binding="{Binding User}" />

            <data:DataGridTemplateColumn Header="Note" Width="100">
                <data:DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                            <TextBlock TextWrapping="Wrap" Text="{Binding Note}" />
                    </DataTemplate>
                </data:DataGridTemplateColumn.CellTemplate>
            </data:DataGridTemplateColumn> 

        </data:DataGrid.Columns>
    </data:DataGrid>
24
ответ дан 30 November 2019 в 15:56
поделиться

Я использую ElementStyle, чтобы установить текст обертывания, и он работает хорошо. Счастливое кодирование!

<Style x:Key="DataGridTextColumnStyle" TargetType="TextBlock">
    <Setter Property="TextWrapping" Value="Wrap"/>
</Style>

<data:DataGridTextColumn Binding="{Binding DESC}"   
         Header="Short Description" 
         HeaderStyle="{StaticResource DataGridHeaderStyle}"  
         ElementStyle="{StaticResource DataGridTextColumnStyle}"  >
</data:DataGridTextColumn>   
20
ответ дан 30 November 2019 в 15:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: