5 Stimmen

WPF benutzerdefiniertes Steuerelement Stil Problem

Ich habe ein benutzerdefiniertes Steuerelement (von MS Toolkit - DatePicker). Ich habe meinen eigenen Stil wie diese gemacht:

<Style TargetType="{x:Type local:DatePicker}">

Aber dieser Stil gilt nicht automatisch. Ich muss Key hinzufügen:

<Style x:Key="DatePickerStyle" TargetType="{x:Type local:DatePicker}">

und referenzieren es in jedem benutzerdefinierten Steuerelement wie

<toolkit:DatePicker Style="{StaticResource DatePickerStyle}"

...

um es zum Laufen zu bringen. Weiß jemand, warum?

10voto

Sorskoot Punkte 10066

Haben Sie versucht, den TargetType zu ändern in:

TargetType="{x:Type toolkit:DatePicker}"> 

Sie beziehen sich auf . an einem Ort und Werkzeugsatz in einem anderen.

aktualisieren: Ich habe es in einer kleinen Anwendung ausprobiert. Dies ist die xaml wie es funktionieren sollte:

<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="WpfApplication3.Window1"
    x:Name="Window"
    Title="Window1"
    Width="640" Height="480"
    xmlns:Toolkit="http://schemas.microsoft.com/wpf/2008/toolkit">
  <Window.Resources>
    <Style TargetType="{x:Type Toolkit:DatePicker}">
      <Setter Property="Background" Value="#FFFF0000"/>
    </Style>
  </Window.Resources>
  <Grid x:Name="LayoutRoot">
    <Toolkit:DatePicker HorizontalAlignment="Left" 
                        Margin="61,143,0,116" Width="232" />
  </Grid>
</Window>

Dieses Beispiel soll einen Datumsanzeiger mit rotem Hintergrund erzeugen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X