D’un point de vue PowerShell, étant donné qu’il faut au minimum PowerShell v2 pour s’en servir, WPF est une technologie récente. Par conséquent, il n’existe pas encore d’outil intégré tel quel que PrimalForms pour bâtir des interfaces graphiques. Cela fait donc de nous, en quelque sorte, des aventuriers… Et
Création assistée d’interfaces graphiques WPF
en tant que tel, nous allons devoir ruser un peu. 🙂
Premièrement, même si cela peut nous effrayer en tant qu’administrateur systèmes, nous allons devoir utiliser WPF Designer inclus dans Visual Studio 2008 pour construire des interfaces. Dans notre exemple, nous utiliserons Visual C# 2008 Express Edition (disponible à l’adresse http://www. microsoft.com/express/vcsharp); il s’agit de la version gratuite.
Une fois Visual C# 2008 Express Edition installé, exécutez-le, allez dans le menu Fichier/Nouveau projet… et sélectionnez Application WPF. A présent, vous venez de lancer le WPF Designer ; et de façon tout à fait classique vous n’avez plus qu’à construire votre interface en glissant déposant des éléments graphiques. Par exemple, faisons à nouveau l’interface graphique qui nous a servi d’exemple dans la première partie de cet article.
Une fois l’oeuvre achevée, sauvegardez votre travail et allez dans le répertoire de sauvegarde chercher le fichier portant l’extension .xaml. Et voilà, nous venons de définir notre première interface graphique en WPF !
Pour avoir un code XAML utilisable avec PowerShell, enlevez simplement sur la première ligne « x:Class="WpfApplication1.Window1" ». A présent pour afficher notre interface, il suffit de créer une Here String puis de convertir cette dernière en un objet XML, de la charger et enfin de l’afficher. Pour ce faire seules quatre lignes de PowerShell sont nécessaires.
Afin de faire fonctionner cet exemple, vous devez utiliser PowerShell ISE (Integrated Scripting Environment) installé avec PowerShell v2, il s’agit de l’éditeur graphique PowerShell. Pour information, l’interface de PowerShell ISE a été réalisée avec WPF.Veuillez noter le nombre réduit de lignes de script par rapport au même exemple mais en version Windows Forms. On passe ainsi de quarante à vingt lignes de script, voire même beaucoup moins si on met le code XAML dans un fichier à part, comme ci-après :
[XML]$xaml =Get-Content
'C:\temp\pommespoires.xaml'
$reader=(New-Object System.Xml.XmlNodeReader
$xaml)
$Form=[Windows.Markup.XamlReader]::Load( $reader
)
# Ajouter ici des évènements si nécessaire
$Form.ShowDialog() | out-null
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Baromètre channel IT : fin du cuivre, essor de UCaaS et premiers pas vers l’IA
- Fraude par identité synthétique : comment l’IA peut redonner confiance aux entreprises et à leurs clients
- VirtualBrowser protège la navigation web à la source
- Innovation et performance : le rôle clé du consulting dans la transformation numérique
Articles les + lus
Moderniser le développement logiciel : de la fragmentation à l’intégration
Analyse Patch Tuesday Mars 2026
Une nouvelle ère de la modernisation du mainframe
Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
À la une de la chaîne Tech
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Analyse Patch Tuesday Mars 2026
- Une nouvelle ère de la modernisation du mainframe
- Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
- DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
