【问题标题】:Disable Auto Grid Resizing in XAML Designer using VS 2019使用 VS 2019 在 XAML 设计器中禁用自动调整网格大小
【发布时间】:2020-11-05 16:16:35
【问题描述】:

这个非常令人沮丧的问题一直在发生(现在是 2019 年,之前是 2017 年),在找到 zilch 查看 XAML 选项并搜索类似问题后,我希望有人能帮助解决这个问题:

在设计器中选择元素(尤其是网格元素)有时会将 * 网格定义更改为疯狂的值,这些值在视觉上看起来相同,但是当我查看它们时,在某些时候标记比率变得巨大,甚至会添加额外的行/列,然后自动更改实际存在的跨度!

知道这个糟糕的设置是什么,或者我点击了什么来实现这一点吗?

例如它会改变这个:

<ColumnDefinition Width="2*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="7*" />

到这里:

<ColumnDefinition Width="37*" />
<ColumnDefinition Width="30" />
<ColumnDefinition Width="513*" />

它永远不会影响设计器中的视图,只会影响标记。这就是我可以随便给出的解释,任何帮助都会很棒!

【问题讨论】:

    标签: wpf visual-studio xaml visual-studio-2017 visual-studio-2019


    【解决方案1】:

    Grid 中的行与列的比例非常精确。对于你的第一个ColumnDefinition,就是把整个Grid的宽度分成十个部分,第一列是Grid宽度的20%,第二列是10%,第三列是30%。这个根据你的需要设计。

    当你在设计器中做一点修改时,如果你在设计器中为ColumnDefinition选择Star,所有的列宽可能会按比例分布,如下图所示:

    【讨论】:

    • 我了解星比的工作原理,但我没有在设计器中对其进行编辑,而是假设它会发生,因为我偶尔会单击元素,而不是拖动或移动小工具以在编辑器中移动插入符号(在split view) 到那个元素,所以这是一个奇怪的反应,尤其是当它自动添加新列然后跨越以补偿它们时,一切看起来仍然一样!很奇怪 - 我在一台带触摸板的笔记本电脑上,所以它可能是多指的东西?我不知道,但希望你能更清楚地看到我的具体困境......
    • 您单击了哪个元素?如何添加列并删除它们?我需要更多详细信息来重现该问题。
    • 真的是这个问题,哈哈,我是如何产生列和跨度的!当我在设计器中单击一个元素以移动编辑器插入符号时,我必须单击网格单元的边缘或小链节装饰,但我没有将它拖到任何地方,就像它对比例以保留布局,但以非常奇怪的方式改变了我编码的比例。如果您在设计器中设置标记而不是移动微调器,您肯定会注意到这一点。
    • 我的“解决方案”是停止在设计器中单击并使用“文档大纲”视图查找内容...
    • 你能考虑用 Blend for Visual Studio 来设计你的 xaml 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-22
    • 2011-10-27
    • 1970-01-01
    • 2016-08-17
    • 2020-07-25
    • 1970-01-01
    相关资源
    最近更新 更多