Как растянуть элементы управления по размеру страницы в wpf - PullRequest
0 голосов
/ 24 августа 2009

У меня есть список ширины, установленный на Авто. Когда я запускаю приложение Windows, оно открывается в нормальном размере (не развернуто). Но когда я разверну окно, ширина списка будет такой же, а пространство справа от нее будет пустым.

нормальный размер | _________________________ | Развернутое | _________________________ | ...........

, хотя окно теперь полностью занято. Пожалуйста, ведите меня в работе над этим.

Спасибо Рамм

Ответы [ 2 ]

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

StackPanel, по замыслу, не заботится о визуальном пространстве. Он стремится занять как можно меньше места. Вы можете оставить на месте самый внутренний StackPanel, который оборачивает переключатели, но ваши контейнеры внешнего макета должны быть изменены на Grid или, как в моем примере ниже, DockPanel:

<Window x:Class="Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="445" Width="515">

    <DockPanel Name="spDataFlow" Margin="0,45,0,0" >
        <DockPanel x:Name="stkPnlDataFlow" VerticalAlignment="Top">

            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*" />
                </Grid.ColumnDefinitions>
                <Grid.RowDefinitions>
                    <RowDefinition Height="*" />
                    <RowDefinition Height="Auto" />

                </Grid.RowDefinitions>
            </Grid>

            <StackPanel Grid.Row="1" Background="Red" Margin="20,15,0,0" Orientation="Horizontal"  VerticalAlignment="Center" >
                <RadioButton Name="rdbtnUploadData" HorizontalAlignment="Left"  VerticalAlignment="Center" FontSize="12" Foreground="White" Content="Upload Data" IsEnabled="True"  CommandParameter="UploadAll"/>
                <RadioButton Name="rdbtnDownloadData" HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="12" Foreground="White" Content="Download Data" Margin="20,0" CommandParameter="DownloadAll"/>
                <RadioButton Name="rdbtnUploadSelected" HorizontalAlignment="Left"  VerticalAlignment="Center" FontSize="12" Foreground="White" Content="Update Data" Margin="10,0"  CommandParameter="UpdateSelected"/>
            </StackPanel>

        </DockPanel>
    </DockPanel>

</Window>
0 голосов
/ 03 сентября 2009

Ну, я считаю, что по умолчанию элемент управления ListView автоматически заполняет все доступное пространство, поэтому очень странно, что есть такая проблема. Не могли бы вы вставить свой код?

...