2014-07-24 11 views
6

Ho cercato una soluzione al mio problema su Google per ore, ma non ci sono molte informazioni da trovare.WPF Toolkit Color Picker modello di modifica ora non disponibile colori

Sto utilizzando WPF Toolkit v2.2.1.

Ho un controllo Color Picker nella mia applicazione WPF, che deve essere personalizzato. Sto modificando il modello di controllo del Color Picker in App.xaml per applicarlo a tutti i selettori di colori.

Non appena scelgo di utilizzare il modello, tutti i colori disponibili scompaiono dal Selettore colore. Ho provato ad assegnare nuovi colori disponibili dal codice senza successo.

La collezione di colori ci sono, non sono semplicemente mostrati sembra.

Questo è come il CP è definisce nel mio MainWindow.xaml

<xctk:ColorPicker x:Name="cpRing" SelectedColorChanged="cpRing_Changed" HorizontalAlignment="Left" Margin="238,5,0,0" VerticalAlignment="Top" Height="20" Width="39" Foreground="Black"/> 

modello il controllo è troppo grande per incollare qui purtroppo. Ma questo dovrebbe essere facilmente riproducibile aggiungendo un CP a una finestra wpf e facendo clic con il tasto destro su designview e selezionando Modifica modello. Non appena applicato, i colori scompariranno, senza cambiare nulla.

Qualcuno sa cosa fare per visualizzare i colori disponibili quando si modifica il modello di controllo?

migliori saluti

risposta

5

Yep, ha qualcosa che non va con il suo stile. Ma se si osserva il suo stile con attenzione si trova il problema:

ricerca di parola chiave StandardColors o AvailableColors in XAML, qui è StandardColors 's modello:

<ListBox x:Name="PART_StandardColors" Grid.Row="1"> 
     <ListBox.Style> 
      <Style TargetType="{x:Type ListBox}"> 
      <Setter Property="Background" Value="Transparent"/> 
      <Setter Property="BorderThickness" Value="0"/> 
      <Setter Property="ItemsPanel"> 
      .... 
     </ListBox.Style> 
</ListBox> 

si può vedere la casella di riepilogo non ha inserito l'ItemSource , in modo da poter aggiungere da soli:

<ListBox x:Name="PART_StandardColors" ItemsSource="{TemplateBinding StandardColors}" Grid.Row="1"> 

modificare casella di riepilogo di AvailableColors:

<ListBox x:Name="PART_AvailableColors" ItemsSource="{TemplateBinding AvailableColors}" Grid.Row="1"> 

ora funziona.

+0

Funziona! Brillante. Grazie mille. – Nicki

Problemi correlati