【问题标题】:How do you insert a row/column in a WPF Grid?如何在 WPF 网格中插入行/列?
【发布时间】:2023-10-16 03:41:01
【问题描述】:

有人对如何使用(最好)Visual Studio 2008 在 WPF 网格中插入行或列有任何建议吗?

添加一个新的RowDefinitionColumnDefinition 没有问题,但是对于受插入。有没有人想出一个聪明的方法来自动化这个(也许使用正则表达式查找/替换操作)?

如果这不能在 Studio 中完成,是否可以在 Blend 中完成?

【问题讨论】:

    标签: wpf visual-studio-2008 xaml grid expression-blend


    【解决方案1】:

    在您的应用程序中使用较小尺寸的网格,然后将这些网格放入其他网格中,或者尝试Karl on WPF 提供的一些 WPF 网格工具

    VS2010 看起来会有更好的编辑器。

    Blend 非常擅长插入行 - 在设计编辑模式下,您可以单击边缘添加一行;然后,Blend 将调整您的布局,使其与已编辑的行看起来相同。您仍然需要在网格周围手动移动元素,但总体上应该会减少工作量。

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题,并使用vim 来增加行号。这是我的表情:

      :.,$s/\(Grid.Row="\)\(\d\+\)/\=join([submatch(1),submatch(2)+1],'')/ 
      

      解释:

      :.,$s 从当前行 (.) 替换 (:s) 直到文件末尾 ($)

      /\(Grid.Row="\)\(\d\+\)/ 搜索Grid.Row=",后跟一个或多个数字 (\d\+)。这两个部分都在\(\) 之间以使用子匹配功能。

      \=join([...],'') 连接数组中[] 之间的字符串。

      submatch(1),第一个子匹配,即文本Grid.Row="/

      submatch(2)+1,第二个子匹配,即加1的数字。

      【讨论】:

        最近更新 更多