首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Wpf Grid中结合使用SharedSizeGroup和ColumnSpan

在Wpf Grid中结合使用SharedSizeGroup和ColumnSpan
EN

Stack Overflow用户
提问于 2011-02-03 05:41:06
回答 1查看 2.1K关注 0票数 3

当我同时使用列上的SharedSizeGroup和列的跨度控件创建一个网格时,网格变得“精神”抖动,并使cpu内核变得最大。

我相信这肯定有一个很好的理由来解释为什么这个方法不起作用,但是我想不出来!我还能如何实现这种大小布局?

代码语言:javascript
复制
<Grid IsSharedSizeScope="True">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" SharedSizeGroup="Columns"/>
            <ColumnDefinition Width="Auto" SharedSizeGroup="Columns"/>
        </Grid.ColumnDefinitions>

        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>

        <Label Grid.Column="0">Blah</Label>
        <Label Grid.Column="1">Blah Blah Blah Blah</Label>

        <Label Grid.Row="1" Grid.ColumnSpan="2">ajsgdeererajgsfdg dfg df gdfg djgsad</Label>
    </Grid>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-03 06:46:25

你所做的基本上就是在你的布局中设置无限递归。

  • 要共享大小列首先需要计算它们自己的大小。
  • 然后它们可以基于较大的列(可能是此处的第1列)进行同步。
  • 在第0列扩展到与第1列的大小匹配之后,第三个标签现在可以使用Column
  • 中更多的空间,因为它移动列,它在第1列中所需的空间变得更小,从而允许第1列缩小到与其标签1所需的新空间相匹配现在重新计算其大小(从第一步重新开始)

< contents.

  • Column >F211>

SharedSizeGroup旨在跨不同的网格使用,以维护以某种方式分隔到不同容器中的元素的对齐方式,例如不同的模板化列表项或标题行。如果需要没有拉伸的等分行,可以使用*大小的列或UniformGrid之类的东西来代替。

代码语言:javascript
复制
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

    <UniformGrid Rows="1" HorizontalAlignment="Left">
        <Label >Blah</Label>
        <Label >Blah Blah Blah Blah</Label>
    </UniformGrid>

    <Label Grid.Row="1">ajsgdeererajgsfdg dfg df gdfg djgsad</Label>
</Grid>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4880184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档