Ich habe eine abstrakte Klasse erstellt, die von UserControl erbt, und hat eine abstrakte Methode. Ich habe einige Steuerelemente, die diese abstrakte Klasse implementieren. Das Silverlight-Steuerelement funktioniert problemlos, aber im XAML-Editor wird eine InstanceBuilderException ausgelöst, sodass die XAML-Vorschau nicht angezeigt werden kann. Gibt es eine Möglichkeit, dies zu umgehen, oder mache ich nur etwas falsch? Vielen Dank!Silverlight Xaml Editor Fehler beim Erben von einer benutzerdefinierten Klasse
Die abstrakte Klasse ist sehr einfach:
public abstract class Widget : UserControl
{
public abstract void Close();
}
Die Implementierung ist hier:
public partial class OnlineUserWidget : Widget
{
.....
}
Und die XAML
<local:Widget x:Class="Prototype.Widgets.OnlineUserWidget"
xmlns:local="clr-namespace:Prototype.Widgets"
....
</local:Widget>
Schließlich ist der Fehler:
kann nicht erstellt werden ein Inst von "Widget". bei Microsoft.Expression.DesignModel.Core.InstanceBuilderOperations.InstantiateType (Typ Typ, Boolean supportInternal, Boolean supportProtected) bei Microsoft.Expression.DesignModel.InstanceBuilders.ClrObjectInstanceBuilder.InstantiateTargetType (IInstanceBuilderContext Zusammenhang ViewNode viewNode) bei Microsoft.Expression.DesignModel .InstanceBuilders.ClrObjectInstanceBuilder.Instantiate (IInstanceBuilderContext Zusammenhang ViewNode viewNode) bei Microsoft.Expression.Platform.Silverlight.InstanceBuilders.DependencyObjectInstanceBuilder.Instantiate (IInstanceBuilderContext Zusammenhang ViewNode viewNode) bei Microsoft.Expression.Platform.Silverlight.InstanceBuilders.FrameworkElementInstanceBuilder.Instantiate (IInstanceBuilderContext-Kontext, ViewNode viewNode) bei Microsoft.Expression.Platform.Silverlight.Instance Builders.UserControlInstanceBuilder.Instantiate (IInstanceBuilderContext Zusammenhang ViewNode viewNode) bei MS.Internal.Services.DesignModeValueProviderService.DesignModeValueProviderBuilder.Instantiate (IInstanceBuilderContext Zusammenhang ViewNode viewNode) bei Microsoft.Expression.DesignModel.Core.ViewNodeManager.Instantiate (ViewNode viewNode)
Ah super, ich wusste nicht über die Kontrolle Kontrolle (hah). Ich werde versuchen, das mit einer Style/Control-Vorlage zu verwenden, danke! – codechinchilla