J'ai créé le contrôle WPF le plus simple possible - Il remplace juste OnRender et dessine un rectangle rouge.Simple WPF Custom Control - Comment configurer la couleur de fond?
Toutefois, uniquement lorsque vous réglez l'arrière-plan en mode XAML sur bleu, le contrôle est entièrement bleu sans affichage rouge. Si l'arrière-plan n'est pas défini, le rectangle rouge ne montre aucun problème.
Pourquoi le rectangle rouge n'est pas affiché sur l'arrière-plan bleu lorsque l'arrière-plan est défini?
public class MyWpfControl : Control
{
protected override void OnRender(DrawingContext drawingContext)
{
drawingContext.DrawRectangle(Brushes.Red, null, new Rect(0, 0, 100, 100));
}
}
Vous pourriez être mieux d'écrire un contrôle utilisateur et faire tout cela en XAML – Daniel
supprimé Tag Silverlight, Silverlight ' Control' n'a pas de OnRender. Cette question est à propos de wpf pas silverlight, c'est une question rare qui est pertinente pour les deux. – AnthonyWJones
@Daniel: Je souhaite que je pourrais - malheureusement le contrôle doit Taille automatique du texte pour être aussi grand que s'adaptera, et cela nécessite du code et ne peut pas être fait dans le seul XAML. Le problème exact est ici: http://stackoverflow.com/questions/1990624/wpf-xaml-can-text-be-auto-sized – Lee