Créer des applications en langues bidirectionnellesCreating applications in bi-directional languages

Vous pouvez utiliser Visual Studio pour créer des applications qui affichent correctement les langues qui s’écrivent de droite à gauche, comme l’arabe et l’hébreu.You can use Visual Studio to create applications that correctly display text in languages written right-to-left, including Arabic and Hebrew. Pour certaines fonctionnalités, il suffit de définir des propriétés.For some features, you can simply set properties. Dans d’autres cas, vous devez implémenter des fonctionnalités dans le code.In other cases, you must implement features in code.

Note

Pour entrer et afficher des langues bidirectionnelles, vous devez utiliser une version de Windows configurée avec la langue appropriée.In order to enter and display bi-directional languages, you must be working with a version of Windows that is configured with the appropriate language. Il peut s’agir d’une version anglaise de Windows sur laquelle est installé le module linguistique correspondant, ou d’une version localisée de Windows.This can either be an English version of Windows with the appropriate language pack installed, or the appropriately localized version of Windows.

Types d’applications qui prennent en charge les langues bidirectionnellesTypes of application that support bi-directional languages

  • Applications Windows.Windows applications. Vous pouvez créer des applications entièrement bidirectionnelles prenant en charge le texte bidirectionnel, l’ordre de lecture de droite à gauche et la mise en miroir (c’est-à-dire l’inversement de la disposition des fenêtres, des menus, des boîtes de dialogue, etc.).You can create fully bi-directional applications that include support for bi-directional text, right-to-left reading order, and mirroring (reversing the layout of windows, menus, dialog boxes, and so on). À l’exception de la mise en miroir, ces fonctionnalités sont disponibles par défaut ou en tant que paramètres de propriété.Except for mirroring, these features are available by default or as property settings. La mise en miroir est prise en charge par défaut pour certaines fonctionnalités, telles que les boîtes de message.Mirroring is supported inherently for some features, such as message boxes. Dans d’autres cas, vous devez implémenter la mise en miroir dans votre code.However, in other cases you must implement mirroring in code. Pour plus d’informations, consultez la page Prise en charge bidirectionnelle pour les applications Windows Forms.For more information, see Bi-directional support for Windows Forms applications.

  • Applications web.Web applications. Les services web prennent en charge l’envoi et la réception de texte UTF-8 et Unicode. Ils sont donc adaptés aux applications qui impliquent des langues bidirectionnelles.Web services support and receiving sending UTF-8 and Unicode text, making them suitable for applications involving bi-directional languages. Les applications clientes web s’appuient sur les navigateurs pour leur interface utilisateur. Le degré de prise en charge bidirectionnelle d’une application web dépend donc de celui du navigateur du client.Web client applications rely on browsers for their user interface, so the degree of bi-directional support in a web application is dependent on how well the user's browser supports those bi-directional features. Dans Visual Studio, vous pouvez créer des applications avec prise en charge de l’arabe ou de l’hébreu, de l’ordre de lecture de droite à gauche, de l’encodage des fichiers et des paramètres de culture locale.In Visual Studio, you can create applications with support for Arabic or Hebrew text, right-to-left reading order, file encoding, and local culture settings. Pour plus d’informations, consultez la page Prise en charge bidirectionnelle pour les applications web ASP.NET.For more information, see Bidirectional support for ASP.NET web applications.

  • Les applications consoles.Console applications. Les applications console ne prennent pas en charge le texte en langue bidirectionnelle.Console applications do not include text support for bi-directional languages. Cela est dû à la façon dont Windows fonctionne avec les applications console.This is a consequence of how Windows works with console applications.

Fonctionnalités de Visual Studio entièrement prises en chargeVisual Studio features that are fully supported

Dans Visual Studio, au moment du design, vous pouvez utiliser les langues bidirectionnelles des façons suivantes :At design time in Visual Studio, you can use bi-directional languages in these ways:

  • Saisie de texte Visual Studio prend en charge le format Unicode. Par conséquent, si votre système est configuré d’après les paramètres régionaux et la langue d’entrée souhaités, vous pouvez saisir du texte en arabe ou en hébreuText entry Visual Studio supports Unicode, so if your system is set to the appropriate locale and input language, you can enter text in Arabic or Hebrew. (la prise en charge de l’arabe comprend les signes kachidé et les signes diacritiques).(Arabic support includes Kashida and Diacritics.)

  • Noms d’objets Vous pouvez utiliser les langues bidirectionnelles pour attribuer des noms aux solutions, projets, fichiers, dossiers, etc.Object names You can use bi-directional languages to assign names to solutions, projects, files, folders, and so on. Dans le code, vous pouvez utiliser les langues bidirectionnelles pour les noms de variables, de classes, d’objets, d’attributs, de métadonnées et d’autres éléments.In code, you can use bi-directional languages for the names of variables, classes, object, attributes, metadata, and other elements.

  • Encodage des fichiers Vous pouvez enregistrer et ouvrir des fichiers avec un encodage Unicode ou spécifique à une langue.File encoding You can save and open files with a language-specific or Unicode encoding. Pour plus d’informations, consultez la page Guide pratique pour enregistrer et ouvrir des fichiers avec encodage.For more information, see How to: Save and open files with encoding.

Fonctionnalités avec prise en charge limitée ou sans prise en chargeFeatures with limited or no support

Certaines fonctionnalités courantes des applications pour langues bidirectionnelles ne sont pas entièrement prises en charge par Visual Studio, voire pas du tout.Other features common to bi-directional language applications are not fully supported in Visual Studio, or in some cases, not at all. Elles incluent notamment :These include:

Ordre de lecture de droite à gauche Par défaut, les contrôles de saisie de texte que vous utilisez dans Visual Studio utilisent l’ordre de lecture de gauche à droite.Right-to-left reading order By default, text-entry controls you use in Visual Studio use left-to-right reading order. Dans la plupart des cas, vous pouvez utiliser des méthodes Windows standard pour changer l’ordre de lecture.In most cases, you can use standard Windows gestures to switch reading order. Par exemple, vous pouvez appuyer sur Ctrl+Maj droite pour que la fenêtre Propriétés gère l’ordre de lecture de droite à gauche pour les valeurs de propriété.For example, you can press Ctrl+RightShift to switch the Properties window to support right-to-left reading order for property values.

Cependant, l’ordre de lecture de droite à gauche n’est pas pris en charge partout dans Visual Studio.However, right-to-left reading order is not supported everywhere in Visual Studio. Voici certaines exceptions :Exceptions include:

  • Les cases à cocher, listes déroulantes et autres contrôles des boîtes de dialogue Visual Studio utilisent toujours l’ordre de lecture de gauche à droite.Check boxes, drop-down lists, and other controls in Visual Studio dialog boxes always use left-to-right reading order.

  • L’éditeur de code (et éditeur de texte) ne prend pas en charge l’ordre de lecture de droite à gauche.The code editor (and text editor) does not support right-to-left reading order. Vous pouvez entrer du texte dans une langue bidirectionnelle, mais l’ordre de lecture restera de gauche à droite.You can enter text in a bi-directional language, but the reading order is always left-to-right.

Affectation de noms avec du texte en arabe ou en hébreuNaming things using Arabic or Hebrew text

Vous pouvez utiliser du texte en arabe ou en hébreu pour attribuer des noms aux dossiers, variables ou autres objets.You can use Arabic or Hebrew text to assign names to folders, variables, or other objects. Quand vous utilisez l’arabe, vous pouvez utiliser les caractères arabes, y compris les signes kachidé et les signes diacritiques.When working with Arabic, you can use any Arabic characters including Kashida and Diacritics.

Les éléments suivants peuvent être nommés en arabe et en hébreu, et sont gérés correctement par Visual Studio :The following elements can be named using Arabic or Hebrew and will be handled correctly in Visual Studio:

  • Les noms de solutions, de projets et de fichiers, y compris les dossiers que vous incluez dans le chemin du projet.Solution, project, and file names, including any folders you include in the project path. L’Explorateur de solutions affichera correctement le nom des éléments et des solutions.Solution Explorer will display solution and element names correctly.

  • Contenu des fichiers.File contents. Vous pouvez ouvrir ou enregistrer des fichiers avec encodage Unicode ou avec une page de code sélectionnée.You can open or save files with Unicode encoding or with a selected code page.

    Note

    L’éditeur de code est un cas particulier.The code editor is a special case. Pour plus de détails, voir ci-dessous.For details, see below.

  • Éléments de données.Data elements. L’Explorateur de serveurs affiche correctement ces éléments et vous permet de les modifier.Server Explorer will display these elements correctly and allow you to edit them.

  • Éléments copiés dans le Presse-papiers Windows.Elements copied to the Windows Clipboard.

  • Attributs et métadonnées.Attributes and metadata.

  • Valeurs de propriétés.Property values. Vous pouvez utiliser du texte en arabe ou en hébreu dans la fenêtre Propriétés.You can use Arabic or Hebrew text in the Properties window. Elle permet de basculer entre l’ordre de lecture de droite à gauche et celui de gauche à droite à l’aide de séquences de touches Windows standard (Ctrl+Maj droite pour l’ordre de droite à gauche et Ctrl+Maj gauche pour l’ordre de gauche à droite).The window allows you to switch between right-to-left and left-to-right reading order using standard Windows keystrokes (Ctrl+RightShift for right-to-left, and Ctrl+LeftShift for left-to-right).

  • Code et texte littéral.Code and literal text. Dans l’éditeur de code (qui est également l’éditeur de texte), vous pouvez utiliser l’arabe ou l’hébreu pour nommer des classes, des fonctions, des variables, des propriétés, des littéraux de chaîne, des attributs; etc.In the code editor (which is also the text editor), you can use Arabic or Hebrew to name classes, functions, variables, properties, string literals, attributes, and so on. Toutefois, l’éditeur ne prend pas en charge l’ordre de lecture de droite à gauche et le texte commence toujours à la marge de gauche.However, the editor does not support right-to-left reading order; text always starts at the left margin.

    Tip

    Il est recommandé de placer des littéraux de chaîne dans les fichiers de ressources au lieu de les coder en dur dans vos programmes.It is recommended that you place string literals in resource files instead of hard-coding them into your programs. Pour plus d’informations, consultez Ressources dans les applications de bureau (.NET Framework).For more information, see Resources in desktop apps (.NET Framework).

    Note

    Vous devez être cohérent dans la façon dont vous faites référence aux objets nommés dans ces langues.You must be consistent in how you refer to objects named in these languages. Par exemple, si vous utilisez des signes kachidé pour nommer une variable en arabe, vous devrez toujours utiliser des signes kachidé dans vos références à cette variable, sinon une erreur se produira.For example, if you use Kashida in naming an Arabic variable, you must always use Kashida when referring to that variable, or errors will result.

  • Commentaires de code.Code comments. Vous pouvez créer des commentaires en arabe ou en hébreu.You can create comments in Arabic or Hebrew. Vous pouvez également utiliser ces langues dans le générateur de commentaires.You can also use these languages in the comment builder tool.

Voir aussiSee also