3

我有用户控件。我想禁用它的大小调整。用户控件是:

<UserControl x:Class="DocumentUpload"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:telerikGrid="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.GridView" 
      xmlns:telerikGrid1="clr-namespace:Telerik.Windows.Controls.GridView;assembly=Telerik.Windows.Controls.GridView" 
      xmlns:telerikInp="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Input" 
      xmlns:telerikNav="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Navigation" 
      xmlns:telerikData="clr-namespace:Telerik.Windows.Data;assembly=Telerik.Windows.Data" 
      xmlns:telerik="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls" mc:Ignorable="d" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
       Height="auto" Width="auto" MaxWidth="520">

我知道有一个属性叫做

ResizeMode="NoResize"

.但它在UserControl中不可用。有什么建议吗?

4

2 回答 2

3

您已经设置为Width,所以我想您希望允许控件根据需要占用尽可能多的空间,但不会更多。HeightAuto

此外,UserControl它本身不会调整大小,而是取决于它所属的布局。

因此,解决问题的最快方法是设置HorizontalAlignment="Left"VerticalAlignment="Top". 但是您应该考虑应用程序的整个布局以及 UC 如何受到 UI 其他组件的影响/影响。

于 2014-01-23T11:11:37.727 回答
1

然后您的 UserControl 的 Parent 属性持有 Window 实例。大多数时候,它将是 NavigationWindow。在您的 UserControl 的加载事件中尝试以下代码,它将起作用。

((NavigationWindow)this.Parent).ResizeMode = ResizeMode.NoResize
于 2014-01-23T12:14:54.037 回答