【问题标题】:Wpf viewbox resizing after users click用户单击后 Wpf 视图框调整大小
【发布时间】:2015-01-24 13:03:41
【问题描述】:

我有一个在加载窗口后会调整大小的视图框。完成加载后,当我单击窗口中的某个位置或调整它的大小时,窗口正在调整大小:

<Viewbox Grid.Column="0" Stretch="Fill" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="5, 5, 5, 5">
                    <Grid Background="White">
                            <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="1*" />
                                    <ColumnDefinition Width="5*"  MinWidth="150" />
                                    <ColumnDefinition Width="4*"  MinWidth="150" />
                            </Grid.ColumnDefinitions>

                            <Image x:Name="ImgTwitterUserPhoto" HorizontalAlignment="Left" Grid.Column="0" MaxWidth="150" MaxHeight="150" Margin="10, 10, 10, 10"
                                           VerticalAlignment="Top"/>

                            <Grid  Grid.Column="1" SnapsToDevicePixels="True" Background="White">

                                    <Grid.RowDefinitions>
                                            <RowDefinition Height="10*"></RowDefinition>
                                            <RowDefinition Height="10*"></RowDefinition>
                                            <RowDefinition Height="80*"></RowDefinition>
                                    </Grid.RowDefinitions>

                                    <Label x:Name="LblTwitterUserName" Content="" HorizontalAlignment="Left"
                                           VerticalAlignment="Top" Grid.Row="0"
                                           FontFamily="Segoe UI Light" FontSize="20"/>
                                    <Label x:Name="LblTwitterUserHandle" Content="" HorizontalAlignment="Left"
                                           VerticalAlignment="Top" FontSize="12"
                                           FontFamily="Segoe UI Semibold" Grid.Row="1"
                                           Foreground="#FF8B8888" Opacity="0.8"/>
                            </Grid>


                    </Grid>
            </Viewbox>

【问题讨论】:

  • Faka 你投反对票。这似乎是微软的越野车。

标签: c# .net wpf user-interface


【解决方案1】:

我发现了奇怪的行为:

在主窗口(父控件)我们有这个选项:SizeToContent="WidthAndHeight"

在第一次用户交互中,主窗口确保您的所有控件都尊重该属性。因此,控件的宽度和高度会被调整。问题是控件在用户交互后会被调整大小,可能是因为要保持内部控件的纵横比或视图框与容器大小有关。

解决方案是仅将 WidthAndHeight 替换为 Width,因为调整大小来自垂直尺寸。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 2014-10-05
    • 1970-01-01
    相关资源
    最近更新 更多