我有一个控件,我需要为其强制执行特定的 Width
或 Height
,具体取决于名为 Orientation
的属性,显然可以是垂直
或水平
。
因此,如果 Orientation
属性是 Vertical
,则 Width
必须 始终 是 2.
如果 Orientation
属性为 Horizontal
,则 Height
必须 始终 为 2。
我已经尝试了很多东西,包括 MaximumSize
,但它们似乎都不够好。
例如...单行 TextBox
(Multiline
设置为 False
。)?
最佳答案
这些是步骤:
- 通过创建一个继承自 ControlDesigner 的空类来实现控件的设计器.
- 在此设计器类中,覆盖 SelectionRules属性并返回您想要用于控制的任何规则;例如,仅当您要禁止垂直调整大小时才设置 left- 和 right-sizeable。
- 通过使用 DesignerAttribute 装饰您的控件类,将设计器附加到您的控件,并在属性的构造函数中引用您的设计器类。
关于c# - 强制控制宽度或高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4005073/