我有一个这样简单的设置。
我很确定1和2不会出现任何问题,所以我在这里发布了3的代码。
Visual Studio Express对错误不是很友好,它只是说:
发生了'System.ArgumentException'类型的第一次机会异常 在PresentationFramework.dll
中
代码有什么问题?非常感谢。
class AdornerTemplateY : ControlTemplate
{
FrameworkElementFactory Chrome;
public AdornerTemplateY(ContentControl designerItem)
: base(typeof(AdornerY))
{
Chrome = new FrameworkElementFactory(typeof(Rectangle));
Chrome.SetValue(Rectangle.NameProperty, "INTERNAL_CHROME");
Chrome.SetValue(Rectangle.FillProperty, Brushes.PowderBlue);
Chrome.SetValue(Rectangle.StrokeProperty, Brushes.Black);
Chrome.SetValue(Rectangle.DataContextProperty, designerItem);
Chrome.SetValue(Rectangle.IsHitTestVisibleProperty, true);
this.VisualTree = this.Chrome;
this.Triggers.Add(CreateTrigger());
}
private Trigger CreateTrigger()
{
Trigger TriggerFocus = new Trigger
{
Property = AdornerY.IsMouseOverProperty,
Value = true,
Setters =
{
new Setter
{
Property = AdornerY.VisibilityProperty,
Value = Visibility.Collapsed
},
}
};
return TriggerFocus;
}
}