Guide pas-à-pas : Créer un contrôle hébergé personnalisé pour Unified Service Desk
Date de publication : novembre 2016
S’applique à : Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2013, Dynamics CRM 2015, Dynamics CRM 2016
Dans cette rubrique, vous allez apprendre à créer un contrôle hébergé personnalisé appelé My Custom Control avec une action personnalisée. Le contrôle hébergé personnalisé possède deux contrôles Windows Presentation Foundation (WPF) : un bouton qui appelle le contrôle hébergé Debugger et une étiquette de texte affichant le nom d’utilisateur lorsqu’une action personnalisée MyCustomAction, est appelée.
Contenu de la section
Conditions préalables
Créer un contrôle hébergé personnalisé
Tester votre contrôle hébergé personnalisé
Conditions préalables
Microsoft .NET Framework 4.5.2
Application cliente Unified Service Desk ; elle est requise pour tester le contrôle hébergé
Microsoft Visual Studio 2012, Visual Studio 2013 ou Visual Studio 2015
Gestionnaire de package NuGet pour Visual Studio 2012, Visual Studio 2013 ou Visual Studio 2015
Modèles de SDK de Microsoft Dynamics 365 pour Visual Studio qui contiennent le modèle de projet de contrôle hébergé personnalisé. Vous pouvez l’obtenir de l’une des méthodes suivantes :
Téléchargez le modèle de Kit de développement logiciel (SDK) de CRM depuis la galerie Visual Studio. Double-cliquez sur le fichier CRMSDKTemplates.vsix pour installer le modèle dans Visual Studio.
Téléchargez et installez le Kit de développement logiciel (SDK) de CRM. Le fichier de modèles, CRMSDKTemplates.vsix, est situé dans le dossier SDK\Templates. Double-cliquez sur le fichier de modèle pour l’installer dans Visual Studio.
Créer un contrôle hébergé personnalisé
Démarrez Visual Studio et créez un projet.
Dans la boîte de dialogue Nouveau projet :
Dans la liste des modèles installés, développez Visual C#, puis sélectionnez Modèles Dynamics 365 SDK > Unified Service Desk > Contrôle hébergé personnalisé USD.
Vérifiez que .NET Framework 4.5.2 est sélectionné.
Spécifiez le nom et l'emplacement du projet, puis cliquez sur OK pour créer un nouveau projet.
Dans l’Explorateur de solutions, double-cliquez sur le fichier USDControl.xaml pour afficher le concepteur XAML.
Dans le concepteur, ajoutez les contrôles suivants à partir de la Boîte à outils :
Étiquette : dans le volet Propriétés, définissez le nom du contrôle sur « myLabel ».
Bouton : dans le volet Propriétés, définissez le nom du contrôle sur « myButton » et le contenu sur « Démarrer le débogueur ».
Voici à quoi ressemblent les contrôles dans le concepteur XAML.
Double-cliquez sur le bouton pour ajouter du code à l’arrière-plan de XAML. Vous serez dirigé vers la définition de l’événement Click de myButton dans le fichier USDControl.xaml.cs. Ajoutez la commande suivante.
private void myButton_Click(object sender, RoutedEventArgs e) { if (!this.desktopAccess.AppExistsInUI("Debugger")) { this.desktopAccess.CreateDynamicApplication("Debugger"); } this.FireRequestAction(new Microsoft.Uii.Csr.RequestActionEventArgs("Debugger", "default", null)); }
Définissez une action personnalisée pour le contrôle hébergé. Dans le fichier USDControl.xaml.cs, recherchez la définition remplacée de DoAction.
protected override void DoAction(Microsoft.Uii.Csr.RequestActionEventArgs args)
Ajoutez le code suivant dans la définition remplacée de DoAction pour définir une action personnalisée appelée MyCustomAction qui accepte un paramètre appelé username.
if (args.Action.Equals("MyCustomAction", StringComparison.OrdinalIgnoreCase)) { List<KeyValuePair<string, string>> actionDataList = Utility.SplitLines(args.Data, CurrentContext, localSession); string valueIwant = Utility.GetAndRemoveParameter(actionDataList, "username"); // assume there is a myKey=<value> in the data. if (!string.IsNullOrEmpty(valueIwant)) { this.Dispatcher.Invoke(() => { this.myLabel.Content = valueIwant; }); } }
Conseil
Le modèle fournit la plus grande partie du code sous forme de commentaires dans la définition remplacée de DoAction pour vous aider à vous familiariser rapidement avec le développement. Vous devez annuler les commentaires de la ligne de code et remplacer les valeurs d'espace réservé par vos valeurs.
Enregistrez votre projet, puis générez-le (Générer > Générer la solution) pour vérifier s’il se génère correctement.
Tester votre contrôle hébergé personnalisé
Lorsque votre projet se génère correctement, testez le contrôle hébergé personnalisé. Le test comporte deux parties : la définition du contrôle hébergé personnalisé sur le serveur, puis la connexion au Unified Service Desk sur le serveur, à l’aide de votre application cliente.
Définir le contrôle hébergé et l’action personnalisés sur le serveur Dynamics 365
Connectez-vous à Microsoft Dynamics 365.
Sur la barre de navigation, choisissez Microsoft Dynamics 365, puis sélectionnez Paramètres.
Choisissez Paramètres > Unified Service Desk > Contrôles hébergés.
Choisissez NOUVEAU, puis spécifiez les valeurs dans l’écran Nouveau contrôle hébergé, comme indiqué ci-dessous.
Notes
URI d'assembly est le nom de votre assembly et Type d'assembly est le nom de votre assembly (dll) suivi d'un point (.), puis du nom de la classe dans votre projet Visual Studio. Dans cet exemple, le nom de l'assembly est MyCustomControl et le nom de la classe est USDControl, qui est le nom de classe par défaut lorsque vous créez un contrôle hébergé personnalisé.
Choisissez Enregistrer pour créer le contrôle hébergé.
Créez l’action pour le contrôle hébergé que vous avez défini dans Visual Studio. Dans la barre de navigation, choisissez la flèche vers le bas en regard du nom du contrôle hébergé, puis sélectionnez Actions UII.
Choisissez Ajouter une nouvelle action UII.
Tapez MyCustomAction dans le champ Nom, puis choisissez Enregistrer.
Votre contrôle hébergé et votre action personnalisés sont maintenant configurés sur le serveur Dynamics 365.
Exécuter le client Unified Service Desk pour utiliser le contrôle hébergé personnalisé
Copiez l’assembly contenant la définition de votre contrôle hébergé personnalisé depuis le dossier de sortie du projet Visual Studio (<ProjectFolder>\bin\debug) vers le répertoire d’application du Unified Service Desk. Dans ce cas, vous copierez le fichier MyCustomControl.dll dans le répertoire c:\Program Files\Microsoft Dynamics CRM USD\USD.
Exécutez le client Unified Service Desk pour vous connecter à votre serveur Dynamics 365.
Une fois connecté, vous verrez le contrôle hébergé personnalisé, Mon contrôle hébergé personnalisé, sur votre bureau.
Cliquez sur Démarrer le débogueur pour lancer le contrôle hébergé Débogueur.
Pour tester l’action personnalisée, choisissez l’onglet Débogueur, puis cliquez sur la flèche vers le bas au-dessus de l’onglet Appels à l’action pour afficher la zone où vous pouvez tester les appels à l’action et les actions UII.
Choisissez l’onglet Action directe.
Dans la liste Contrôle hébergé, sélectionnez Mon contrôle hébergé personnalisé, et dans la liste Action, sélectionnez MyCustomAction.
Selon la définition de l’action personnalisée, cet appel à l’action requiert un paramètre appelé username ; ajoutez donc la valeur suivante dans le champ Données : Nom d’utilisateur=Sylvie Dubois.
Cliquez sur l'icône Exécuter l'action directe (), puis cliquez sur l'onglet Mon contrôle hébergé personnalisé. Le nom d’utilisateur spécifié s’affiche dans la zone d’étiquette.
Voir aussi
Contrôle hébergé USD (contrôle hébergé)
Types de contrôle hébergé et référence d'action/événement
Guides pas-à-pas pour la configuration d'Unified Service Desk
Utiliser un contrôle hébergé personnalisé dans Unified Service Desk
Unified Service Desk 2.0
© 2017 Microsoft. Tous droits réservés. Copyright