1

我正在 WPF 中创建一个全屏应用程序,我需要选择如何实际调整内容大小以使用屏幕上的所有可用空间。

据我所知,有两种解决方案:

  • 带有星星尺寸的网格
  • ViewBox 包装器

我认为他们都可以完成这项工作,但取决于应用程序,一个比另一个更好:什么时候应该使用网格方法?什么时候可以接受 viewbox 方法?

4

3 回答 3

1

Grid 总是比 ViewBox 更灵活,如果您希望应用程序的某些组件具有固定的高度/宽度怎么办?例如,Visual Studio 侧面的面板大小不会随着应用程序窗口大小的变化而变化。

于 2011-05-17T11:08:08.373 回答
1

我会做一些实验:

我同意 ColineE 和 karam:

使用星号为列宽和行创建一个网格,以帮助布局程序。

然后将需要缩放的特定项目包装在视图框中。

所以,我猜这个答案是加起来的 1/2。

检查此示例代码以了解我的意思...

<Window x:Class="WpfApplication1.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>


<TextBlock Grid.Column ="0"  Text="Left"/>

    <Viewbox Grid.Column ="1" >
        <TextBlock  Text="Right"/>
    </Viewbox>
</Grid>

于 2011-05-17T13:44:00.373 回答
0

您不能使用网格和星形尺寸进行缩放。ViewBox 可以缩放其内容。

于 2011-05-17T11:09:10.413 回答