我有一个控件,我需要强制执行某个Width
或Height
,具体取决于名为Orientation
的属性,显然可以是Vertical
或{ {1}}。
因此,如果Horizontal
属性为Orientation
,那么Vertical
必须 始终为2。
如果Width
属性为Orientation
,那么Horizontal
必须 始终为2.
我尝试了许多事情,包括Height
,但它们似乎都不够好
例如......单行MaximumSize
(将TextBox
设置为Multiline
。)?
答案 0 :(得分:2)
以下是步骤:
答案 1 :(得分:0)
这是自定义用户控件吗?如果是这样,您可以将此逻辑构建到Orientation属性中。
如果它是自定义控件,则可以编写Orientation属性,以便set方法检查值(可以是Vertical或Horizontal),然后相应地静默设置Width / Height。在同一个set方法中,您还可以根据值更新两个bool字段,如dontLetUserSetWidth和dontLetUserSetHeight。
这看起来有用吗?如果我没有正确地阅读你的问题,我很抱歉!
答案 2 :(得分:0)
作为示例...单行TextBox(Multiline设置为False。)
考虑到这个具体示例,当多行设置为false时,您必须在垂直图形更改时显式处理多线模式。