我有以下问题。我有一个派生自 UserControl 的类,代码如下:
public partial class MyUC : UserControl
{
[...]
public bool IsFlying { get { return true; } }
[...]
}
我想使用为 MyUC 类创建的样式,下面是样式代码。它位于 App.Xaml 中:
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dc="clr-namespace:MyNamespace"
<Application.Resources>
<Style x:Key="mystyle" TargetType="dc:MyUC ">
<Style.Triggers>
<Trigger Property="IsFlying" Value="true">
<Setter Property = "Background" Value="Blue"/>
</Trigger>
</Style.Triggers>
</Style>
</Application.Resources>
如您所见,我想使用我在 MyUC 中声明的属性。问题是当我尝试向控件添加样式时,会发生错误。
<UserControl x:Class="MyNamespace.MyUC"
[...]
Style="{StaticResource mystyle}">
<UserControl.Resources>
</UserControl.Resources>
</UserControl>
错误是:“MyUC”TargetType 与元素“UserControl”的类型不匹配。
据我了解,编译器无法识别从 UserControl 派生的 MyUC 类。如何解决?
提前致谢!