Как сделать так, чтобы столбец Grid автоматически увеличивал размер содержимого, но не обрезал содержимое, если оно становится слишком большим? - PullRequest
0 голосов
/ 26 июня 2009

У меня есть DataGrid, встроенный в первый столбец Grid. Я хочу, чтобы столбец сетки автоматически изменял размер содержимого, но когда я делаю это, и DataGrid становится слишком широким (когда столбцы добавляются пользователем), DataGrid обрезается содержащим столбцом. По сути, мне нужно сохранить режим прокрутки DataGrid, но сжимать DataGrid до содержимого и никогда не обрезать.

<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data">
<Border x:Name="LayoutRoot" Background="White">
    <Grid HorizontalAlignment="Stretch">
        <Grid.RowDefinitions>
            <RowDefinition
                Height="Auto" />
            <RowDefinition
                Height="Auto" />
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition
                Width="Auto" />
        </Grid.ColumnDefinitions>
        <Border><!--Toolbar content goes here--></Border>
        <data:DataGrid
            MaxHeight="350"
            Grid.Row="1" />
    </Grid>
</Border>

1 Ответ

1 голос
/ 02 сентября 2009

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

<ColumnDefinition Width="Auto" MinWidth="80" MaxWidth="200"/>
...