Utiliser une image dans le designer d'un control web utilisateur ASP / C#

Introduction

Voici comment utiliser une image ou par exemple un screenshot pour représenter votre controle web utilisateur en mode design sous Visual Studio 2005.
Ce tutoriel est en C#.

Tutoriel

Tout d'abord, vous devez créer une nouvelle Solution dans Visual Studio 2005 et y ajouter un nouveau projet « Class Library » ainsi qu'un nouveau « Site Web ASP .NET ». Je prend l'exemple ici d'un composant permettant de lire un média dans un page web.

Le composant est défini dans WindowsMediaPlayer.cs et nous allons définir son affichage avec une image dans le mode Design de Visual Studio dans la classe WindowsMediaPlayerDesigner.cs.

Ensuite, il faut ajouter au répertoire où se trouvent les deux classes précédentes notre fichier image (ici screenWMP.jpg) puis modifier son Build Action en Embedded Resource.

Nous allons spécifier l'accès à dans le fichier Assembly :

NomProjet / Properties / AssemblyInfo.cs

[assembly: TagPrefix("WindowsMediaPlayer.Controls", "WMP")]
[assembly: WebResource("WindowsMediaPlayer.Controls.screenWMP.jpg", "image/jpeg")]

Il nous reste encore à spécifier dans WindowsMediaPlayer.cs le designer correspondant à notre contrôle c'est-à-dire notre classe WindowsMediaPlayerDesigner.cs

Enfin nous allons coder la méthode GetDesignTimeHtml() de la classe WindowsMediaPlayerDesigner.cs qui elle-même hérite de ControlDesigner

C'est cette méthode qui va être appelée pour l'affichage du web control en mode design dans Visual Studio 2005.

Il faut donc récupérer une instance du contrôle ainsi que son ClientScriptManager qui va nous permettre de récupérer un lien vers la ressource image que nous avons inséré.

On le récupère avec GetWebResourceUrl ( Type, NomRessource ) . Ce qui nous donne finalement :

Voilà j'espère que ce tutoriel vous aidera à gagner du temps et à utiliser des images pour enrichir le designer de vos composants personnalisés. Maintenant voici le résultat de la manipulation du composant WindowsMediaPlayer en mode design de notre page default.aspx.

Ce document intitulé « Utiliser une image dans le designer d'un control web utilisateur ASP / C# » issu de CodeS SourceS (codes-sources.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Rejoignez-nous