2012-03-16 423 views
0

在过去几天里,我一直在阅读数十篇关于此的帖子。 我有几个WPF表单,我想与大多数解决方案一起工作,问题在于表单中的控件变得放错了位置,或者在增大尺寸时看起来很糟糕。调整与窗口大小同步的控件大小

目前我正在使用网格,这些都是好的,并保持我的控制大部分到位,但他们需要一段时间来做(我有大约15个应用程序),以及只看起来类似于原始设计,例如,一些控件仍然看起来拉长,设计受到影响。

我的继承人电网

<Grid.ColumnDefinitions> 
    <ColumnDefinition Width="156*" /> 
    <ColumnDefinition Width="323*" /> 
</Grid.ColumnDefinitions> 

<Grid.RowDefinitions> 
    <RowDefinition Height="72" /> 
    <RowDefinition Height="49" /> 
    <RowDefinition Height="49" /> 
    <RowDefinition Height="43" /> 
    <RowDefinition Height="91" /> 
    <RowDefinition Height="90" /> 
    <RowDefinition Height="90" /> 
    <RowDefinition Height="92" /> 
    <RowDefinition Height="50*" /> 
</Grid.RowDefinitions> 

的一个的例子我所真正需要的是一个良好的布局和控制,以提供一个体面的UI,还有什么其他的替代品在那里与调整窗口大小的内容它?如果有更好的方法来做到这一点,我甚至愿意回到Windows窗体中,因为网格似乎限制了控件。我从字面上寻找与应用程序最初以其默认分辨率(大约500x500)加载后一样的外观。

非常感谢你的帮助。

+0

我想说看看[Panel](http://msdn.microsoft.com/de-de/library/ms754152.aspx)类和尝试将它们结合起来以实现你想要的。 – nik 2012-03-16 19:21:07

+1

那么上面的列和行定义有什么问题?很显然,非星级的行将保持相同的高度,但其他所有行都应该缩放。单元格内容存在问题吗?在这种情况下,你需要显示他们的标记。 – 2012-03-16 19:21:58

回答

0

您的列和最后一行正在使用星号调整,这将导致单元格拉伸以填充可用空间。根据Horizo​​ntalAlignment和VerticalAlignment的值,在控件上(默认值随控件变化),它们也可以拉伸以填充所有可用空间(或者它们可以居中或仅在一个方向上拉伸)。

我怀疑明星大小是无意的,但它可能是你想要的,只是以不同的方式使用。您也可能会发现“自动”尺寸有用。这里有一个网格的大小选项的解释:http://blogs.msdn.com/b/wpfsldesigner/archive/2010/01/14/wpf-silverlight-layout-controls.aspx#grid