Hallo,
ich habe ein Control was von ContentControl abgeleitet ist. Dieses Control wird über ein ControlTemplate modifiziert angezeigt.
In dem Template sind zwei ContentPresenter, die den Inhalt anzeigen:
<Style TargetType="{x:Type local:FlipPanel}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:FlipPanel}">
<Grid >
<Grid >
<Grid x:Name="Grid1">
<ContentPresenter Content="{Binding Front," & _
"RelativeSource={RelativeSource" & _
"TemplatedParent}}" />
</Grid>
<Grid x:Name="Grid2">
<ContentPresenter Content="{Binding Back," & _
"RelativeSource={RelativeSource" & _
"TemplatedParent}}" />
</Grid>
</Grid>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style> In der Klasse des Controls steht:
Imports System.Windows.Controls.Primitives
Imports System.ComponentModel
Public Class FlipPanel
Inherits ContentControl
Public Shared ReadOnly FrontProperty As DependencyProperty = _
DependencyProperty.Register("Front", GetType(object), GetType(FlipPanel), _
New UIPropertyMetadata(Nothing))
Property Front As object
Get
Return GetValue(FrontProperty)
End Get
Set(value As object)
SetValue(FrontProperty, value)
End Set
End Property
Public Shared ReadOnly BackProperty As DependencyProperty = _
DependencyProperty.Register("Back", GetType(Object), GetType(FlipPanel), _
New UIPropertyMetadata(Nothing))
Property Back As object
Get
Return GetValue(BackProperty)
End Get
Set(value As object)
SetValue(BackProperty, value)
End Set
End Property
Shared Sub New()
DefaultStyleKeyProperty.OverrideMetadata(GetType(FlipPanel), New _
FrameworkPropertyMetadata(GetType(FlipPanel)))
End Sub
End class XAML:
<FlipPanel>
<FlipPanel.Front>
<Button >
Front
</Button>
</FlipPanel.Front>
<FlipPanel.Back>
<Button >Back</Button>
</FlipPanel.Back>
</FlipPanel> Das funktioniert auch alles super. Mein Problem ist nun aber folgendes: In kann die beiden Buttons nicht mit der Maus anklicken oder bearbeiten, wenn ich im Entwurfsmodus in der IDE bin.
Andere ContentControls wir Expander oder was auch immer bieten ja diese Funktion. Was muss ich einstellen, um den Inhalt der Contentpresenter zur Entwurfszeit bearbeiten zu können?
Gruß Mäxx |