首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Silverlight/XAML设计问题-水平对齐(对接?)

Silverlight/XAML设计问题-水平对齐(对接?)
EN

Stack Overflow用户
提问于 2010-09-30 21:59:39
回答 1查看 921关注 0票数 1

我有一个关于使用什么XAML来实现我的设计的问题。我目前在屏幕上有一个Image area,宽度可以改变。在图像上方,我有两个工具栏,每个工具栏都有许多按钮。其中一个我想浮动/停靠到图像的左边缘,另一个我想浮动/停靠到图像的右边缘。当然,当图像变大时,右侧的工具箱应该保持停靠在右侧边缘。如何才能做到这一点?

代码语言:javascript
复制
+--------------------------+                                +---------------+
|  TOOLBAR 1               |                                |  TOOLBAR 2    |
+--------------------------+                                +---------------+

+---------------------------------------------------------------------------+
|                                                                           |
|                                                                           |
|                                                                           |
|                    <----- VARIABLE-WIDTH IMAGE ----->                     |
|                                                                           |
|                                                                           |
|                                                                           |
+---------------------------------------------------------------------------+

任何XAML代码样本和简短的解释都将不胜感激。我是个菜鸟。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-30 22:39:52

使用两行两列的网格(列宽设置为Auto)。图像将跨越第二行上的两列。网格的大小与其内容一致,并且随着网格的增长(因为图像已经变大),右对齐工具栏将相应地移动以保持与图像的对齐。下面是一个用XAML编写的示例,使用矩形代替工具栏和图像:

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

    <Rectangle Name="Toolbar1" Fill="#FF894220" Width="200" Height="50" VerticalAlignment="Top" HorizontalAlignment="Left" Grid.Row="0" Grid.Column="0" />
    <Rectangle Name="Toolbar2" Fill="#FF894220" Width="200" Height="50" VerticalAlignment="Top" HorizontalAlignment="Right" Grid.Row="0" Grid.Column="1" />
    <Rectangle Name="Image" Fill="#FFB94222" Width="500" Height="100" VerticalAlignment="Top" HorizontalAlignment="Left" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" />
</Grid>

更改名为"Image“的矩形的宽度以查看效果。

希望这能帮到你。

克里斯

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3831270

复制
相关文章

相似问题

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