2010-11-26 10 views
1

Je souhaite créer un contrôle personnalisé Silverlight en utilisant C# uniquement, sans aucun xaml.Créer un contrôle personnalisé Silverlight avec du code uniquement (pas de xaml)

Voici mon travail jusqu'à présent (dépouillée au strict minimum pour la question):

J'ai essayé d'hériter le contrôle de l'utilisateur comme suit:

public class myControl: UserControl 
{ 
    // class code 
} 

et l'ajouter à la LayoutRoot:

myControl control = new myControl(); 
LayoutRoot.Children.Add(control); 

Le contrôle est ajouté, mais c'est invisible !!

Comment puis-je le rendre visible? Y a-t-il quelque chose qui me manque?

modifier: Le seul élément visuel dans mon contorl est une grille avec une image de fond

Répondre

4

Votre Usercontrol sera vide et n'aura aucun effet visuel jusqu'à ce que vous lui donniez un contrôle enfant via sa propriété Content.

+0

Merci, vous l'avez cloué :), j'ai défini la grille à l'intérieur de la classe, j'avais juste besoin de l'ajouter au contenu comme vous l'avez dit. –

1

Eh bien, sauf si vous mettez un modèle en place ou ajouter des éléments dans le code, UserControl est vide.

Peut-être que vous pourriez essayer d'hériter d'un contrôle existant qui a un modèle, comme Button, etc et changer cela dans le code?