WPF custom control und direct-Inhalte unterstützen

Ich bin ziemlich neu in WPF, und bin ein wenig stecken, so dass jede Hilfe wäre sehr geschätzt.

Ich bin versucht, zu schreiben WPF custom control kapselt mehrere Elemente der Funktionalität, die ich bereits mit arbeiten (ich.e Sortieren, filtern, standard-Menüs, etc.), aber in einem netten ordentlichen Paket, um Wiederholungen zu vermeiden.

Jedenfalls habe ich erstellt das benutzerdefinierte Steuerelement (bezogen auf die Kontrolle), und dann haben Sie die folgenden in das Allgemeine.Xaml

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:Controls.ListViewExtended">
    <Style TargetType="{x:Type local:ListViewExtended}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type local:ListViewExtended}">
                    <Border Background="{TemplateBinding Background}"
                            BorderBrush="{TemplateBinding BorderBrush}"
                            BorderThickness="{TemplateBinding BorderThickness}">
                        <ListView>
                            <ListView.View>
                                <GridView>
                                <!-- Content goes here -->                             
                                </GridView> 
                            </ListView.View>
                        </ListView>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>

Wenn ich versuche, um GridViewColumns (oder Kontrolle wirklich), wie unten ...

<elv:ListViewExtended>
   <GridView>
        <GridViewColumn Width="140" Header="Column 1" />
        <GridViewColumn Width="140" Header="Column 2" />
        <GridViewColumn Width="140" Header="Column 3" />
   </GridView>
</elv:ListViewExtended>

Bekomme ich die "... unterstützt keine direkten Inhalte" Fehler.

Habe ich eine Abhängigkeit Eigenschaft (wieder unten), die ermöglicht das hinzufügen von GridView, aber es funktioniert immer noch nicht.

public static DependencyProperty GridViewProperty;

public static string GridViewHeader(DependencyObject target) 
{
    return (string)target.GetValue(GridViewProperty); 
}
public static void GridViewHeader(DependencyObject target, string value) 
{
    target.SetValue(GridViewProperty, value); 
} 

Vielen Dank im Voraus

InformationsquelleAutor mmmm | 2011-01-08
Schreibe einen Kommentar