原文:Blend Grid行列拖拽控制宽高

看效果


  1. <Grid>
  2. <Grid.ColumnDefinitions>
  3. <ColumnDefinition Width="212*"/>
  4. <ColumnDefinition Width="9*"/>
  5. <ColumnDefinition Width="296*"/>
  6. </Grid.ColumnDefinitions>
  7. <Grid.RowDefinitions>
  8. <RowDefinition Height="161*"/>
  9. <RowDefinition Height="6*"/>
  10. <RowDefinition Height="153*"/>
  11. </Grid.RowDefinitions>
  12. <Button Content="Button" Margin="0"/>
  13. <Button Content="Button" Margin="0,0,0,1" Grid.Row="2"/>
  14. <Button Content="Button" Grid.Column="2"/>
  15. <Button Content="Button" Grid.Column="2" Grid.Row="2"/>
  16. <GridSplitter HorizontalAlignment="Center" Margin="2,0" Grid.RowSpan="3" Width="5" Grid.Column="1" RenderTransformOrigin="0.5,0.5">
  17. <GridSplitter.RenderTransform>
  18. <TransformGroup>
  19. <ScaleTransform/>
  20. <SkewTransform/>
  21. <RotateTransform Angle="0.349"/>
  22. <TranslateTransform/>
  23. </TransformGroup>
  24. </GridSplitter.RenderTransform>
  25. </GridSplitter>
  26. <GridSplitter Grid.ColumnSpan="3" HorizontalAlignment="Stretch" Margin="0,3" Grid.Row="1" VerticalAlignment="Center" Height="5"/>
  27. </Grid>

效果2

主要设置俩个地方 注意设置列 auto

1)最外层gridGrid.IsSharedSizeScope="True"

2)设置GridSplitter 所在列或行  SharedSizeGroup


  1. <Grid Grid.IsSharedSizeScope="True" >
  2. <Grid Margin="19,182,60,48" Background="White">
  3. <Grid.ColumnDefinitions>
  4. <ColumnDefinition Width="377*"/>
  5. <ColumnDefinition Width="16*" />
  6. <ColumnDefinition Width="Auto" SharedSizeGroup="aaa"/>
  7. </Grid.ColumnDefinitions>
  8. <Grid.RowDefinitions>
  9. <RowDefinition Height="9*"/>
  10. <RowDefinition/>
  11. <RowDefinition Height="8*"/>
  12. </Grid.RowDefinitions>
  13. <Button Content="Button" Margin="0"/>
  14. <Button Content="Button" Margin="0,0,0,1" Grid.Row="2"/>
  15. <Button Content="Button" Grid.Column="2"/>
  16. <Button Content="Button" Grid.Column="2" Grid.Row="2"/>
  17. <GridSplitter HorizontalAlignment="Center" Margin="1.313,0,1.312,0" Grid.RowSpan="3" Width="5" Grid.Column="1" RenderTransformOrigin="0.5,0.5">
  18. <GridSplitter.RenderTransform>
  19. <TransformGroup>
  20. <ScaleTransform/>
  21. <SkewTransform/>
  22. <RotateTransform Angle="0.349"/>
  23. <TranslateTransform/>
  24. </TransformGroup>
  25. </GridSplitter.RenderTransform>
  26. </GridSplitter>
  27. <GridSplitter Grid.ColumnSpan="3" HorizontalAlignment="Stretch" VerticalAlignment="Center" Height="5" Grid.Row="1"/>
  28. </Grid>
  29. <Grid Margin="19,61,60,169" Background="White">
  30. <Grid.ColumnDefinitions>
  31. <ColumnDefinition Width="377*" />
  32. <ColumnDefinition Width="16*" />
  33. <ColumnDefinition Width="Auto" SharedSizeGroup="aaa"/>
  34. </Grid.ColumnDefinitions>
  35. <Grid.RowDefinitions>
  36. <RowDefinition Height="15*" />
  37. <RowDefinition Height="2*"/>
  38. <RowDefinition Height="13*"/>
  39. </Grid.RowDefinitions>
  40. <Button Content="Button" Margin="0"/>
  41. <Button Content="Button" Margin="0,0,0,1" Grid.Row="2"/>
  42. <Button Content="Button" Grid.Column="2"/>
  43. <Button Content="Button" Grid.Column="2" Grid.Row="2"/>
  44. <GridSplitter HorizontalAlignment="Center" Margin="1.313,0,1.312,0" Grid.RowSpan="3" Width="5" Grid.Column="1" RenderTransformOrigin="0.5,0.5">
  45. <GridSplitter.RenderTransform>
  46. <TransformGroup>
  47. <ScaleTransform/>
  48. <SkewTransform/>
  49. <RotateTransform Angle="0.349"/>
  50. <TranslateTransform/>
  51. </TransformGroup>
  52. </GridSplitter.RenderTransform>
  53. </GridSplitter>
  54. <GridSplitter Grid.ColumnSpan="3" HorizontalAlignment="Stretch" Margin="0,1,0,0" VerticalAlignment="Center" Height="5" Grid.Row="1"/>
  55. </Grid>
  56. </Grid>

Blend Grid行列拖拽控制宽高的更多相关文章

  1. FMX ScrollBox 拖拽控制

    Firemonkey下的ScrollBox 拖拽控制,滚动控制,拖拽,滚动条 AniCalculations 仅允许纵向拖拽,拖拽 scrlbx.AniCalculations.TouchTracki ...

  2. 案例(拖拽对话框、高清放大镜、自制滚动条、元素的隐藏方式、表格隔行变色、tab切换效果、字符串拼接、刷新评论)

    一.拖拽对话框 <style> .of{ width: 500px; } #link,#close{ text-decoration: none; margin: 0 10px; font ...

  3. textarea拖拽控制

    一.用处 textarea默认时允许用户以拖拽形式来改变textarea大小,但textarea的大小变化会撑大其父节点,有时会破坏整体布局,有时我们并不希望textarea随意拖拽. forklif ...

  4. el-table实现行列拖拽

    element ui 表格没有自带的拖拽排序的功能,只能借助第三方插件Sortablejs来实现. 实现步骤: 安装Sortable.js npm install sortablejs --save ...

  5. element ui + sortablejs实现表格的行列拖拽

    <template> <div class="container"> <el-table :data="tableData" bo ...

  6. div拖拽的问题

    今天看到一篇写的很好的文章,摘抄如下: 思路 父盒子相对定位,子元素,也就是被拖拽的元素绝对定位 当鼠标在子元素中按下时,绑定鼠标移动事件,根据鼠标位置改变元素位置 设置鼠标当前位置(offsetX, ...

  7. JQUERY 拖拽 draggable droppable resizable selectable sortable

    今天用了jq ui的拖动碰撞功能,好不容易看到有详细的API解说,记录如下:   <script language="JavaScript" type="text/ ...

  8. html5 Sortable.js 拖拽排序源码分析

    最近公司项目经常用到一个拖拽 Sortable.js插件,所以有空的时候看了 Sortable.js 源码,总共1300多行这样,写的挺完美的.   本帖属于原创,转载请出名出处. 官网http:// ...

  9. CSS 奇思妙想 | 使用 resize 实现强大的图片拖拽切换预览功能

    本文将介绍一个非常有意思的功能,使用纯 CSS 利用 resize 实现强大的图片切换预览功能.类似于这样: 思路 首先,要实现这样一个效果如果不要求可以拖拽,其实有非常多的办法. 将两张图片叠加在一 ...

随机推荐

  1. elasticsearch 单节点出现unassigned_shards

    查看单节点Elasticsearch健康状态 使用head插件查看集群状态 从上面截图可以看出存在5个unassigned的分片,新建索引blog5的时候,分片数为5,副本数为1,新建之后集群状态成为 ...

  2. Docker 清理日志

    docker 长时间运行后,日志文件会逐渐变大可以使用下面命令进行清除 #!/bin/bash echo "==================== start clean docker c ...

  3. HBuilder 云打包生成 .apk 文件所需的安卓证书如何获取以及文件打包前必须的设置

    在 HBuilder 云打包功能中,生在 .apk 文件虽然平台提供了免费的 安卓证书,但如果有其它需求,比如想发布,那么就需要自己去申请各种类型的证书了,这里介绍几个工具,方便在线生成证书并配置到打 ...

  4. Python中print用法里面% ,"%s 和 % d" 代表的意思

    Python 编程 里面% . "%s 和 % d" 代表的意思 %s,表示格化式一个对象为字符 %d,整数 "Hello, %s"%"zhang3& ...

  5. 201871010108-高文利《面向对象程序设计(java)》第四周学习总结

    项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址> ht ...

  6. 13-numpy笔记-莫烦pandas-1

    代码 import pandas as pd import numpy as np s = pd.Series([1,3,6,np.nan, 44,1]) print('-1-') print(s) ...

  7. Java+Selenium3方法篇21-webdriver处理浏览器多窗口切换

    经过前面两篇文章的铺垫,我们这篇介绍,webdriver如何处理,一个浏览器上多个窗口之间切换的问题.我们先脑补这样一个测试场景,你在页面A点击一个连接,会在新的tab窗口打开页面B,这个时候,你在页 ...

  8. loadrunner 集合点设置2

    1.集合点的含义       当通过controller虚拟多个用户执行该脚本时.用户的启动或运行步骤不一定都是同步的,集合点是在脚本的某处设置一个标记.当有虚拟用户运行到这个标记处时,停下等待,直到 ...

  9. 启动hadoop后jps没有namenode,并且启动报错9000

    启动hadoop报错: 解决方法: 我发现没有9000端口被占用,也不知道9000到哪去了,但是也没有NameNode,于是,直接把NameNode格式化了,再重启HDFS即可. 格式化命令:

  10. C++对象布局

    <C++应用程序性能优化><深度探索C++对象模型>笔记 #include<iostream> using namespace std; class student ...