【问题标题】:How to disable resizing of user control in WPF如何在 WPF 中禁用调整用户控件的大小
【发布时间】:2014-01-23 10:55:00
【问题描述】:

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

<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中不可用。有什么建议吗?

【问题讨论】:

  • 如何将放置 UserControl 的窗口的属性设置为ResizeMode="NoResize",或者将高度和宽度设置为固定值而不是自动?调整用户控件的大小是什么意思,默认情况下用户控件是不可调整大小的不是吗?
  • 不,它被用作弹出消息。它被显示,其他所有内容都是灰色的。
  • 如何通过创建一个窗口来托管您的用户控件来显示弹出消息?我的意思是就像显示的here?如果是,您可以按照我上面所说的设置窗​​口的属性。否则你需要告诉我们你是如何显示弹出窗口的,因为我不知道有什么进一步的想法

标签: wpf user-controls dynamic-resizing


【解决方案1】:

您已将 WidthHeight 设置为 Auto,所以我猜您希望控件占用所需的空间,但不会更多。

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

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

【讨论】:

  • 是的,它出现在左上角。但是当它出现时,用户可以通过拖动出现在用户控件边框上的调整大小箭头来调整此用户控件的大小。我希望用户不要调整它的大小。跨度>
  • 你设置水平/垂直对齐了吗?此外,用户控件不包括调整大小箭头,您如何使用/使用此用户控件?
  • 这个用户控件显示在 RAD 窗口中。让我在那里设置属性。谢谢我得到答案。
【解决方案2】:

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

((NavigationWindow)this.Parent).ResizeMode = ResizeMode.NoResize

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    • 1970-01-01
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多