我写了一个自定义控件。我目前有几个控件模板,它们都复制了很多用于显示/隐藏内容等的触发器。我正在尝试将其中一些功能移动到控件本身中以稍微整理模板,并且一直在阅读控制部分,和视觉状态管理器。
目前,该控件公开了一个属性,例如IsExtraInfoShown
。控件模板在此属性上都有自己的触发器来显示/隐藏相应的区域。
在阅读了控制部分之后,这似乎非常适合。所有模板都有一个命名PART_ExtraInfo
的,控件会根据需要显示/隐藏它。
但后来我读到了可视化状态管理器,这似乎推断我应该创建一个ExtraInfoVisibility
组,并拥有模板可以定义的状态,并且可以操作 Blend 之类的编辑器InfoShown
。InfoHidden
我应该使用哪个?或者可以同时使用两者?即,我隐藏/显示PART_ExtraInfo
它是否存在,如果不是我GotoState()
?