【问题标题】:How to use Blend to create a basic Grid如何使用 Blend 创建基本网格
【发布时间】:2011-07-07 20:46:35
【问题描述】:

我是一名试图掌握 Blend 窍门的开发人员。我一直使用 Blend 来处理控件模板等,但我正在尝试将它用于基本的 UI 设计,因为我认为它可能比在 Visual Studio 中手动输入 XAML 快一点。

现在我只是想创建一个基本的网格,但是我看到了两个默认行为,我希望有人可以告诉我如何更改。

1) 当我将鼠标悬停在设计表面之外时,我会看到一条临时黄线出现,当我单击时,新的网格列/行将出现在该位置。问题是新创建的行设置为 0.2297* 之类的高度如何让 Blend 附加常规高度,例如 250?

2) 忽略 1),一旦我有一些行和列,当我将一个按钮或组合框等拖到其中一个单元格上时,它会将它恰好放在我释放鼠标,同时添加一些较大的边距以将其放置在那里。是否可以告诉 blend 只是将控件放入单元格中,而只保留边距?

【问题讨论】:

    标签: wpf silverlight expression-blend


    【解决方案1】:

    网格很棒,但需要花点时间才能熟练地在 Blend 中使用它们。以下是一些帮助您入门的技巧(我在my book 的第 4 章中对此进行了详细介绍)。

    1) 当您使用对齐线创建行和列时,Blend 会自动将它们设置为相对(星形)大小,这就是您所看到的行为。要将行/列样式更改为固定(像素)大小,请单击所需行和列左侧和顶部的挂锁图标。然后,编辑 XAML 中的值,或者您可以在挂锁附近(但不在)单击以选择行或列。这将在“属性”面板中打开尺寸属性。

    2) 简短的回答是“否”。当您在单元格中绘制元素时,Blend 将始终添加边距,除非您注意将它们绘制到边框。这太难了也太费时间了,所以我只是确保我在目标单元格内的某个地方画了它。现在我可以右键单击该元素并选择“Auto Size > Fill”,该元素将填满单元格:没有 Margins、Width 和 Height 设置为 Auto,Horizo​​ntal 和 Vertical Alignments 设置为 Stretch。 [FWIW,解决这是我对 Blend 的第一个功能请求。]

    我希望这会有所帮助。

    【讨论】:

    • 它解决了它,这是肯定的。不过老实说,这有点让人失望。对于#2,让您的文本框和按钮扩展为自动填充并不比现状好多少。我希望我能与 Blend 团队的某个人交谈,听听他们在设计这个“功能”时的想法。不过,感谢您抽出宝贵时间回复。
    • 我不明白你对自动填充的回复,这不是你想要的吗?我的意思是,我知道 Drop 不会发生这种情况,但您是否在寻找不同的结果?如果没有,那总比需要自己设置所有5个属性要好...
    • 我希望将一个按钮放到一个单元格中,以便在该单元格中简单地创建一个普通的旧按钮,没有边距,默认将其定位在左上角。这不是最合适的默认值吗?您通常不会这样做,然后通过更改行/列大小来调整网格,可能在需要时偶尔留出余量?放置特定的边距以将按钮精确地放在鼠标碰巧的位置对我来说似乎很糟糕,因为一开始什么都不会排列,因为您每次都必须将鼠标放在稍微不同的位置。这有意义吗?
    • 您的回答是正确的,不要误会我的意思,我只是说混合设计在此功能上对我来说并没有真正意义,但也许我只是错过了更大的东西。自动填充您的按钮和文本框可能会起作用,但您的行和列的大小是否必须完全正确,以防止您的控件看起来太大和臃肿,或者缩小?
    • RE 评论 1:现在我明白你在说什么了。不同之处在于您是否正在画板上。当您以这种方式放置它时,它会使用鼠标位置来设置边距。您可以通过双击左侧的工具栏(使用 Grid 活动容器)来避免边距,但您必须手动设置正确的行和列。在处理网格时,我更喜欢 drop 方法。
    【解决方案2】:

    回答第 1 点)Blend 正在创建比例网格,以便在您扩大或缩小网格而不是绝对网格时,列保持相同的相对宽度。因此,如果您想要绝对网格宽度,则必须手动编辑这些值。

    我发现在 Blend 中创建基本表单然后在文本编辑器中调整值更容易 - 无论是在 Visual Studio 中还是在 Blend 本身中。

    至于第 2 点)我刚刚尝试过,只要在放置按钮时单击网格上的列/行内部,它就会按预期将其添加到网格的正确列/行中。选择按钮,然后在网格内双击 - 这应该在您单击的位置添加一个默认大小的按钮,但在网格中。 (如果我能看到你在做什么,那就容易多了)。

    【讨论】:

    • 谢谢你,很抱歉我很迟钝,但你能详细说明#2吗?我试过点击设计器上的网格单元格,然后双击我的资产中的按钮,点击单元格然后拖动,等等
    猜你喜欢
    • 2023-01-20
    • 1970-01-01
    • 2013-10-26
    • 1970-01-01
    • 2019-07-03
    • 2017-08-21
    • 1970-01-01
    • 1970-01-01
    • 2011-05-03
    相关资源
    最近更新 更多