原文:
让你的Blend“编辑其他模板”菜单里出现你的Style如图。。
昨天在做控件的时候遇到了一个新的要求,让美工可以在Blend里直接编辑自定义控件里子内容的模板。于是乎疯狂的求助谷哥度姐,结果一无所获。
在查了一遍又一遍的MSDN后,终于发现了一个可能有帮助的类StyleTypedPropertyAttribute ,搜噶,原来是个Attribute的描述,尝试的加在了类的上面
像下边这样
[StyleTypedProperty(Property = "MyChildStyle", StyleTargetType = typeof(Button))]
public class MyControl:Control
{
……
}
然后在MyControl里面定义一个DP属性MyChildStyle,类型是Style,在属性变更时改变我的自定义控件里的一个子控件(类型是Button)的样式
编译。。。。
生成。。。。
启动Blend。。。。
放里面一个我定义的这个控件,然后打开编辑其他模板,终于发现了自己定义的这个Style,到这里一切搞定
这两个参数想必不用做过多的解释,大家都能理解上去哈。。。