日期:2014-05-18  浏览次数:21552 次

[WPF] Grid 列如何自适应并且能动态调整其大小
想要实现这样的效果:
Grid里有两列: 第一列是图片,第二列显示图片的名字等信息。 一开始的时候图片大小为48*48的,当鼠标点击图片后希望图片能变大成64*64的,

一开始我是这样定义Grid的:
 <Grid Width="200">
  <Grid.ColumnDefinitions>
  <ColumnDefinition MinWidth="48" Width="48" />
  <ColumnDefinition />
  </Grid.ColumnDefinitions>
但是点击图片时没办法动态更改第一列的宽度了,

如果我把第一列设为Width="*", 这样显示的效果又不行,因为第一列会自动拉申占用第二列留下后的宽度。

我希望是第一列大小是设定的,然后第二列自适应。比如一开始第一列设了48,那么剩下的152都是第二列的, 当我点击图片是,图片会换成96*96的,那么该行的第一列宽度也会调整到96, 剩下的104为第二列的宽度。

不知能否实现这样的效果, 有相应的例子更好:)



------解决方案--------------------
偶刚看这个WPF。。来接点分再说
------解决方案--------------------
在第一列的ColumnWidthChanged写段代码好了
让第二列列宽=表宽-第1列列宽好了
------解决方案--------------------
恭喜解决了,接点分