在我的Silverlight 4应用程序中,我有一个列表框,我为其创建了一个很好的DataTemplate。这个DataTemplate包含一些我想要处理事件的按钮。所以我在模板上分配了这个事件:
<DataTemplate>
<Grid>
<Button x:Name="myB" Click="myB_Click" />
</Grid>
</DataTemplate>
在包含使用此模板的列表框的UserControl中,我有处理myB_Click的事件处理程序。
只要我在列表框中直接指定了模板,一切正常:
<ListBox ...>
<ListBox.ItemTemplate>
<DataTemplate>
...
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
但是当我将DataTemplate外包给ResourceDirectory时,在将项目添加到列表框时会出现运行时解析器错误
Kategorie:ParserError
信息: 分配给属性时出错 'System.Windows.Controls.Button.Click'。
任何想法,可能会导致什么?
提前致谢,
弗兰克
答案 0 :(得分:2)
如果你把它放在一个资源字典中,那么它找不到事件处理程序,因为你的资源字典后面没有代码。
您是否(a)不将该部分放在ResourceDictionary中并将其保存在您的xaml中 或(b)在资源词典中添加代码