最近在学习wpf,看了网上的一些博文
然后自己也准备跟着做做,,,,
我用的工具是:VS2010、Kaxaml(UI设计)
问题是:我在xaml中,下面这段代码可以运行
可是到了VS2010中,就不行了
【错误信息:The property 'Resources' does not exist on the type 'ControlTemplate' in the XML namespace 'http://schemas.microsoft.com/winfx/2006/xaml/presentation'.
未在类型“ControlTemplate”中找到可附加的属性“Triggers”。】
<!--定义触发器--> <ControlTemplate.Triggers> <Trigger Property="Button.IsMouseOver" Value="True"> <Setter Property="Button.Foreground" Value="Red" /> </Trigger> <EventTrigger RoutedEvent="Mouse.MouseDown" SourceName="faceEllipse"> <EventTrigger.Actions> <BeginStoryboard Storyboard="{StaticResource MouseClickButtonStoryboard}"/> </EventTrigger.Actions> </EventTrigger> <EventTrigger RoutedEvent="Mouse.MouseDown" SourceName="txtBlock"> <EventTrigger.Actions> <BeginStoryboard Storyboard="{StaticResource MouseClickButtonStoryboard}"/> </EventTrigger.Actions> </EventTrigger> </ControlTemplate.Triggers> <!--定义触发器_End--> </ControlTemplate>
为什么会这样呢???
The property 'Resources' does not exist on the type 'ControlTemplate'
说很清楚了哦!
你是否把ControlTemplate用在了Resources节点了?ControlTemplate应该应用于控件节点。
嗯,我把资源的那段代码注释掉了,还是不行
提示信息:
未在类型“ControlTemplate”中找到可附加的属性“Triggers”。
在kaxaml界面设计软件中,
代码都完全没有问题的呀。。。
难道是VS不行,还是什么问题?
@MR_xiaodan: 那就是你的控件的模板不支持TRIGGERS了。
可以参考一个比较完整的模板代码。比如,你用BLEND去获取现有产品的模板代码。
@笨笨蜗牛: 一模一样的代码,在kaxaml中可以执行,而在VS中不可以,
难道是模版控件的问题??
@MR_xiaodan: 这个就难说了。
把System.Windows.Interactivity这个引用文件的“复制到本地属性”设置为true。
设置为true也不行的啊,还有其他的方法么?