Mon projet a plusieurs thèmes avec des couleurs différentes.
J'ai besoin d'habiller certaines zones de texte avec une police/taille/etc .. [pas de différence de couleur]
Actuellement, j'ajoute <asp:TextBox SkinID="skinned" runat="server".../>
à tous les fichiers .skin sous chaque thème. Existe-t-il un moyen de placer cet habillage de zone de texte au même endroit, comme un habillage principal?fichier d'habillage principal dans ASP.NET
Répondre
Vous devrez le lister sous chaque thème, mais il vous suffit de lister une définition de contrôle par thème. Si vous voulez qu'un habillage soit le comportement par défaut d'un contrôle, spécifiez la définition sans la propriété SkinID.
L'absence d'héritage ou de cascade dans l'implémentation ASP.NET Themes est une limitation regrettable qui ne reçoit pas beaucoup d'attention. Dans les scénarios où vous souhaitez avoir une peau globale disponible pour tous thèmes (sans changer la définition de contrôle lui-même), vous avez deux options:
Option 1: Utilisez un VirtualPathProvider
(L'inconvénient de ceci est que vous ne pouvez pas l'utiliser sur les sites Web précompilés sans une réflexion basée sur workaround.)
vous pouvez définir un fichier Global.skin sous un thème spécial mondial où la peau partagée s sont conservés; vous aussi créer un espace réservé fichier Global.skin sous tous les autres thèmes ainsi:
App_Themes
- Global
\Global.skin (primary)
- ThemeA
\Global.skin (empty placeholder)
- ThemeB
\Global.skin (empty placeholder)
Dans le VirtualPathProvider alors vous réacheminer toutes les demandes de App_Themes \ * \ Global.skin à App_Themes \ Global \ Global.skin.
Option 2: Utilisez un post-construction Tâche
Ceci est un amendement à la solution ci-dessus qui évite la limitation des sites précompilé; Au lieu d'effectuer le réacheminement à l'exécution, vous pouvez l'appliquer après la génération via une tâche ms-build qui propage simplement Global \ Global.skin vers tous les autres dossiers de thème.
J'ai utilisé les deux options avec succès.
- 1. Lecture d'entrée m-fichier dans un m-fichier principal
- 2. Intégrer plusieurs fichiers de gabarit enfant dans un fichier principal
- 3. Comment exécuter un principal C# dans une application ASP.NET
- 4. Contrôle utilisateur ASP.NET - Accès à l'objet Page principal dans AddedControl
- 5. Enregistrer l'ID utilisateur dans Principal ou Identité? ASP.Net/OpenID
- 6. sIFR dans le menu principal
- 7. iPhone SDK Copier le fichier au système principal
- 8. Comment séparer certaines propriétés du fichier MSBuild principal
- 9. Utilisateurs ASP.NET/Adhésion/MembershipUser/Sécurité/Principal/Profil ... AIDE
- 10. Suppression d'un fichier dans asp.net
- 11. Téléchargement de fichier dans asp.net
- 12. Chemins de fichier dans ASP.net
- 13. Comment changer le menu principal dans Cocoa?
- 14. Utilisation du principal personnalisé dans Workflow
- 15. routage dans Rails et Subdomain site principal
- 16. Plusieurs DataKeyNames dans le détail principal Gridview
- 17. C principal() dans un grand projet POO
- 18. Analyse du fichier XML via PHP tout en utilisant XSLT comme fichier modèle principal
- 19. Joomla menu principal sortie html
- 20. pourquoi ne reconnaîtra-t-il pas le @properties du fichier d'en-tête du fichier principal?
- 21. Chargement de plusieurs fichiers SWF externes dans un fichier swf principal
- 22. Où est le nom "Formulaire principal" stocké dans Delphi?
- 23. Création d'un fichier .config personnalisé dans asp.net
- 24. Exception sur dowloading fichier PDF dans ASP.NET
- 25. Asp.net Response.Write dans un fichier ascx/aspx
- 26. Chargement d'un fichier texte dans ASP.NET
- 27. Fichier WMV dans une page ASP.NET
- 28. en supprimant le fichier (FileInfo) dans asp.net
- 29. C# effacement du thread principal
- 30. structure de gridview de détail principal escamotable
merci ... J'ai modifié ma question pour être certaines textboxes. Cependant, vous avez toujours répondu à ma question ... il doit être listé dans chaque fichier skin ... – eych