Как обернуть текст столбцы таблицы данных wpf, когда он заполняется с использованием списка динамически? - PullRequest
0 голосов
/ 23 августа 2011

У меня есть xaml как:

<GroupBox Header="groupBox1" Height="174" HorizontalAlignment="Left" Margin="36,38,0,0" Name="groupBox1" VerticalAlignment="Top" Width="285">
        <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
            <Grid x:Name="caseListGrid">
            </Grid>
        </ScrollViewer>
</GroupBox>

и в файле .cs у меня есть функция:

private void LoadDataGrid()
{
    caseElementList = new List<CaseElement>();
    caseElementList.Clear();

    //add 1st element
    caseElementList.Add(new CaseElement
    {
        CaseName = "First Name",
        Description = "Recently I came across the need to customize the look of the standard message box in the application. To do this I’ve decided to create a new class named WPFMessageBox"
    });

    //add second
    caseElementList.Add(new CaseElement
    {
        CaseName = "Second Name",
        Description = "Recently I came across the need to customize the look of the standard message box in the application. To do this I’ve decided to create a new class named WPFMessageBox"
    });

    caseElementList.Add(new CaseElement
    {
        CaseName = "Third Name",
        Description = "Recently I came across the need to customize the look of the standard message box in the application. To do this I’ve decided to create a new class named WPFMessageBox"
    });


    DataGrid dGrid = new DataGrid();                        
    dGrid.AutoGenerateColumns = true;            
    dGrid.ItemsSource = caseElementList;
    this.caseListGrid.Children.Add(dGrid);
}

здесь, в функции, я создал список пользовательских объектов. Затем я назначил список сетке данных (после создания сетки данных).

Но так как я не добавил стили в сетку данных ... и тексты очень большие. Так, это расширяется в виде прокрутки.

Но я хочу отобразить их, используя перенос текста. Итак, кто-нибудь может дать мне какое-либо решение ??

Я обнаружил, что с помощью текстового блока это можно решить. Но я не могу понять, как я могу добавить текстовые блоки в эту сетку данных, потому что я создаю это динамически .. !!

1 Ответ

0 голосов
/ 23 августа 2011

Решение 1: не AutoGenerateColumns и укажите столбцы самостоятельно.

Решение 2: Подпишитесь на событие AutoGeneratingColumn и измените столбец на что-то, что переносится (например, с помощью ElementStyle свойство столбца).

...