HtmlTextBox

Modifié le  Mon, 20 May 2019 sur 05:59 PM

HtmlTextBox

L'élément de rapport HtmlTextBox permet aux développeurs d'insérer du texte au format HTML dans un rapport. Vous pouvez spécifier la valeur HTML au moment de la conception (via un éditeur WYSIWYG ou un éditeur d'expression) ou la récupérer à partir d'une source de données à l'aide de toute expression simple ou complexe donnant le format HTML correct.

Vous pouvez définir des couleurs, des polices et d'autres comportements sur n'importe quel sous-ensemble de texte dans une seule HtmlTextBox afin de créer un publipostage ou un modèle pour le texte de votre rapport. Vous pouvez également utiliser plusieurs paragraphes dans une même zone de texte. Vous pouvez également définir une valeur d'alignement pour toute chaîne de texte individuelle.

Limitations Connues:

  • HtmlTextBox fonctionne uniquement avec les  options de formatage de texte .

  • La HtmlTextbox est rendue sous forme de texte brut sans mise en forme dans Excel.

  • RTL (de droite à gauche) n'est pas pris en charge.

  • HyperLink (balise <A>) est interactif (agit comme un lien hypertexte réel) uniquement sous l’extension de rendu HTML. Pour ajouter des liens dans les fichiers PDF, XLSX, DOCX, PPTX et les rendus HTML, XAML, IMAGE pour les différents visualiseurs de rapports, vous pouvez utiliser une action Lien hypertexte.

  • Toute limitation de HtmlTextBox dans des formats d'exportation spécifiques est reflétée dans la rubrique correspondante de la section d'aide sur la conception pour le rendu de rapport .

Balises HTML prises en charge

Diverses options de formatage sont disponibles pour contrôler la présentation du texte:

  • Police, taille (taille relative par rapport à la taille de la police de l'élément, la valeur par défaut est 3 (1-7)), couleur (<FONT>)

  • Gras, italique, souligné (<strong>, <b>, <em>, <i>, <u>)

  • Indice, exposant (<sub>, <sup>)

  • HyperLink (<a href target>)

  • Listes (<ol>, <ul>, <li>)

  • Organisez le texte en paragraphes (<div>, <span>, <p>, <br>, <centre>)

Les balises TABLE et IMG ne sont pas prises en charge. Vous devez utiliser les éléments natifs Reporting Table / List / Crrostab et PictureBox . Une approche personnalisée, telle que le rendu HTML sous forme d'image avec un outil tiers et l'utilisation de l'image via l'élément PictureBox est également prise en charge.

Attributs CSS pris en charge

  • Couleur de fond

  • bordure, couleur de bordure, largeur de bordure, style de bordure

  • alignement du texte (centre, gauche, droite, justifier), décoration du texte (aucun, souligné, trait linéaire)

  • text-indent (note: doit être spécifié sur un élément de bloc)

  • famille de police, taille de police, poids de police

  • rembourrage, padding-bottom, padding-top, padding-right, padding-left

  • Couleur

Lorsque vous importez du texte contenant du balisage HTML, les données sont toujours d'abord analysées par HtmlTextBox. Étant donné que seul un sous-ensemble de balises HTML est pris en charge, le code HTML affiché dans le rapport rendu peut différer de votre code HTML d'origine.

En outre, conformément à la spécification HTML (et à la spécification XML générale également), les caractères "&", "<" et ">" sont considérés comme spéciaux (délimiteurs de balisage). Ils doivent donc être codés pour pouvoir être traités comme du texte normal. . Par exemple, le caractère "&" peut être échappé avec le "& amp;" entité. Vous trouverez plus d’informations sur le sujet dans cet article de w3.org .


Toute autre balise de balisage HTML sera ignorée lors du traitement du rapport. Si le HTML représenté par l'expression dans HtmlTextBox n'est pas bien formé, le HtmlTextBox lève une exception. Toutes les balises HTML sont insensibles à la casse.

Croissance et rétrécissement

Par défaut, HtmlTextBoxes a une taille définie. Si vous souhaitez autoriser un HtmlTextBox à se développer verticalement en fonction de son contenu, définissez la propriété CanGrow sur True (valeur par défaut). Si vous souhaitez autoriser une zone de texte à être réduite en fonction de son contenu, définissez la propriété CanShrinksur True (la valeur par défaut est False). HtmlTextBox s'agrandira toujours pour accueillir la première ligne de texte, même lorsque CanGrow est False.

Expressions incorporées

L'élément prend en charge les expressions incorporées pour la fonctionnalité de fusion et publipostage. Les expressions incorporées vous donnent la liberté d'obtenir et d'insérer des informations pilotées par les données directement dans l'élément de rapport de zone de texte afin de générer des rapports personnalisés et une fusion du courrier.

Après l'évaluation / le remplacement de l'expression, la valeur de HtmlTextBox doit être XHTML valide.

Édition

HtmlTextBox prend en charge les champs en ligne pilotés par les données, qui peuvent être édités sur place ou via un éditeur au moment du design, disponibles directement dans Visual Studio et dans le Concepteur de rapports autonome.  

L'éditeur sur place de l'élément de rapport de zone de texte HTML (comme pour l'élément de zone de texte) vous permet de saisir rapidement du texte directement dans le concepteur où se trouve l'élément de rapport, sans avoir à rechercher une propriété dans la grille de propriétés. Pour activer l'éditeur in-situ, double-cliquez sur le HtmlTextBox ou sélectionnez-le et appuyez sur F2. Une fois l'éditeur in-situ activé:

  • Enter accepte toutes les modifications.

  • Echap ignore tous les changements.

  • Déplacer le focus du HtmlTextBox accepte également toutes les modifications.

La capture d'écran ci-dessous montre un HtmlTextBox avec l'éditeur in-situ actif.

L'éditeur de conception prend en charge deux modes:

  1. Interactif (mode Création) - vous pouvez sélectionner une partie du texte et la mettre en gras, en modifier la police, la taille, la couleur, etc. à l'aide de commandes appropriées, telles que des listes déroulantes et des boutons (éditeur WYSIWYG). En interne, le concepteur génère une source HTML valide et la stocke dans la propriété Value de l'élément. L'ajout d'expressions incorporées est possible, mais la valeur HTML entière ne peut pas être une expression. Vous pouvez passer en mode HTML à tout moment si nécessaire.

    Appuyez sur la touche Entrée pour insérer un nouveau paragraphe ou un nouvel élément de la liste en fonction du contexte actuel. Notez qu'il n'insère pas <br /> (nouvelle ligne). Pour insérer une nouvelle ligne, utilisez le bouton de la barre d’outils)

    Html Text Box Design Voir

  2. Expression (vue HTML) - l'utilisateur entre des balises HTML brutes et du texte dans l'éditeur de source. La valeur peut être une expression ou un texte contenant des expressions incorporées. L'utilisateur peut passer en mode Création à moins que la valeur ne soit une expression.

    Html Text Box Html Voir

Les concepts MultiLine et TextWrap sont toujours vrais pour HtmlTextBox.

Le indice et superscript balises peuvent être imbriquées (ie <sub> subscript1 <sub> subscript2 </ sub> </ sub> ), entraînant la taille des polices plus en plus petites et des compensations. Cependant, les toggles seuls les boutons de la barre d' outils correspondant indice ou superscript fonction, donc si les balises imbriquées sont nécessaires, le code approprié doit être ajouté manuellement à l' aide de la vue Html de l'éditeur.


Cet article a-t-il été utile ?

C'est super !

Merci pour votre commentaire

Désolé ! Nous n'avons pas pu vous être utile

Merci pour votre commentaire

Dites-nous comment nous pouvons améliorer cet article !

Sélectionner au moins l'une des raisons

Commentaires envoyés

Nous apprécions vos efforts et nous allons corriger l'article