Élément TextBlock

Note

Créez-vous des scénarios Copilot, Teams ou Outlook optimisés par des cartes adaptatives ? Visitez le Hub de documentation sur la carte adaptative, le nouveau magasin unique pour tous vos besoins en carte adaptative ! Il dispose de toutes les ressources que vous recherchez, y compris la documentation complète pour de nombreuses nouvelles fonctionnalités, telles que la disposition réactive, l’icône, le badge, le carrouel, les graphiques, etc.

Cette page fournit la documentation de l’élément TextBlock dans le schéma des cartes adaptatives.

Remarque importante sur l’accessibilité : Dans la version 1.3 du schéma, nous avons introduit une propriété d’étiquette sur les entrées pour améliorer l’accessibilité. Si l’application hôte que vous ciblez prend en charge la version 1.3, vous devez utiliser l’étiquette au lieu d’un TextBlock comme indiqué dans certains exemples ci-dessous. Une fois que la plupart des applications hôtes ont été mises à jour vers la dernière version, nous allons mettre à jour les exemples en conséquence.

Bloc de texte

Affiche du texte, ce qui permet de contrôler les tailles de police, l’épaisseur et la couleur.

Propriétés du Bloc de texte

Propriété Type Obligatoire Descriptif Version
type "TextBlock" Oui Doit être "TextBlock". 1,0
text string Oui Texte à afficher. Un sous-ensemble de markdown est pris en charge (https://aka.ms/ACTextFeatures) 1,0
couleur Colors? Non Contrôle la couleur des TextBlock éléments. 1,0
fontType FontType? Non Type de police à utiliser pour le rendu 1.2
horizontalAlignment HorizontalAlignment? Non Contrôle l’alignement horizontal du texte. Lorsqu’elle n’est pas spécifiée, la valeur de horizontalAlignment est héritée du conteneur parent. Si aucun conteneur parent n’a défini horizontalAlignment, il est défini par défaut sur Left. 1,0
isSubtle boolean? Non Si true, affiche du texte légèrement estompé pour être moins visible. 1,0
maxLines number Non Spécifie le nombre maximal de lignes à afficher. 1,0
taille FontSize? Non Contrôle la taille du texte. 1,0
weight FontWeight? Non Contrôle le poids des TextBlock éléments. 1,0
envelopper boolean Non Si true, permettre au texte de s'enrouler. Sinon, le texte est tronqué. 1,0
style TextBlockStyle? Non, valeur par défaut : "default" Style de ce TextBlock pour des fins d’accessibilité. 1,5

Propriétés héritées

Propriété Type Obligatoire Descriptif Version
Solution de repli Element, FallbackOption Non Décrit ce qu’il faut faire lorsqu’un élément inconnu est rencontré ou si les besoins de ce ou de tous les enfants ne peuvent pas être rencontrés. 1.2
height BlockElementHeight Non Spécifie la hauteur de l’élément. 1.1
separator boolean Non Quand true, dessinez une ligne de séparation en haut de l’élément. 1,0
espacement Spacing Non Contrôle la quantité d’espacement entre cet élément et l’élément précédent. 1,0
id string Non Identificateur unique associé à l’élément. 1,0
isVisible boolean Non, valeur par défaut : true Si false, cet élément sera supprimé de l’arborescence visuelle. 1.2
Exige Dictionary<string> Non Série de paires clé/valeur indiquant les fonctionnalités requises par l’élément avec la version minimale correspondante. Lorsque qu’une fonctionnalité est manquante ou n'est pas à la version requise, un mécanisme de secours est déclenché. 1.2

Example

Exemple de base de TextBlock (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "This is some text",
			"size": "large"
		},
		{
			"type": "TextBlock",
			"text": "It doesn't wrap by default",
			"weight": "bolder"
		},
		{
			"type": "TextBlock",
			"text": "So set **wrap** to true if you plan on showing a paragraph of text",
			"wrap": true
		},
		{
			"type": "TextBlock",
			"text": "You can also use **maxLines** to prevent it from getting out of hand",
			"wrap": true,
			"maxLines": 2
		},
		{
			"type": "TextBlock",
			"text": "You can even draw attention to certain text with color",
			"wrap": true,
			"color": "attention"
		}
	]
}

Propriétés

texte

Texte à afficher. Un sous-ensemble de Markdown est pris en charge (https://aka.ms/ACTextFeatures)

  • Type : string
  • Obligatoire : Oui

color

Contrôle la couleur des TextBlock éléments.

  • Type : Colors?
  • Obligatoire : Non
  • Valeurs autorisées :
    • "default"
    • "dark"
    • "light"
    • "accent"
    • "good"
    • "warning"
    • "attention"

Exemple de couleur (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "color: default",
			"color": "default"
		},
		{
			"type": "TextBlock",
			"text": "color: accent",
			"color": "accent"
		},
		{
			"type": "TextBlock",
			"text": "color: good",
			"color": "good"
		},
		{
			"type": "TextBlock",
			"text": "color: warning",
			"color": "warning"
		},
		{
			"type": "TextBlock",
			"text": "color: attention",
			"color": "attention"
		},
		{
			"type": "TextBlock",
			"text": "color: light",
			"color": "light"
		},
		{
			"type": "TextBlock",
			"text": "color: dark",
			"color": "dark"
		}
	]
}

fontType

Type de police à utiliser pour le rendu

  • Type : FontType?
  • Version : 1.2
  • Obligatoire : Non
  • Valeurs autorisées :
    • "default"
    • "monospace"

FontType - Exemple (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.2",
	"body": [
		{
			"type": "TextBlock",
			"text": "Font type not set."
		},
		{
			"type": "TextBlock",
			"text": "Font type set to *default*.",
			"fontType": "default"
		},
		{
			"type": "TextBlock",
			"text": "Font type set to *monospace*.",
			"fontType": "monospace"
		}
	]
}

horizontalAlignment

Contrôle l’alignement horizontal du texte. Lorsqu’elle n’est pas spécifiée, la valeur de horizontalAlignment est héritée du conteneur parent. Si aucun conteneur parent n’a défini horizontalAlignment, il est défini par défaut sur Left.

  • Type : HorizontalAlignment?
  • Obligatoire : Non
  • Valeurs autorisées :
    • "left"
    • "center"
    • "right"

Exemple de l'alignement horizontal (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "**horizontalAlignment:left**",
			"horizontalAlignment": "left"
		},
		{
			"type": "TextBlock",
			"text": "**horizontalAlignment:center**",
			"horizontalAlignment": "center"
		},
		{
			"type": "TextBlock",
			"text": "**horizontalAlignment:right**",
			"horizontalAlignment": "right"
		}
	]
}

isSubtle

Si true, affiche du texte légèrement atténué pour paraître moins visible.

  • Type : boolean?
  • Obligatoire : Non

isSubtle Exemple (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "isSubtle:false",
			"isSubtle": false
		},
		{
			"type": "TextBlock",
			"text": "isSubtle:true",
			"isSubtle": true
		}
	]
}

maxLines

Spécifie le nombre maximal de lignes à afficher.

  • Type : number
  • Obligatoire : Non

maxLines - Exemple (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
			"wrap": true,
			"maxLines": 1
		},
		{
			"type": "TextBlock",
			"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
			"wrap": true,
			"maxLines": 2
		}
	]
}

size

Contrôle la taille du texte.

  • Type : FontSize?
  • Obligatoire : Non
  • Valeurs autorisées :
    • "default"
    • "small"
    • "medium"
    • "large"
    • "extraLarge"

Exemple de taille (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "size:default"
		},
		{
			"type": "TextBlock",
			"text": "size:small",
			"size": "small"
		},
		{
			"type": "TextBlock",
			"text": "size:default",
			"size": "default"
		},
		{
			"type": "TextBlock",
			"text": "size:medium",
			"size": "medium"
		},
		{
			"type": "TextBlock",
			"text": "size:large",
			"size": "large"
		},
		{
			"type": "TextBlock",
			"text": "size:extraLarge",
			"size": "extraLarge"
		}
	]
}

weight

Contrôle le poids des TextBlock éléments.

  • Type : FontWeight?
  • Obligatoire : Non
  • Valeurs autorisées :
    • "default"
    • "lighter"
    • "bolder"

Exemple de Poids (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "weight: lighter",
			"weight": "lighter"
		},
		{
			"type": "TextBlock",
			"text": "weight: default",
			"weight": "default"
		},
		{
			"type": "TextBlock",
			"text": "weight: bolder",
			"weight": "bolder"
		}
	]
}

encapsuler

Si true, permettre l'enroulement du texte. Sinon, le texte est tronqué.

  • Type : boolean
  • Obligatoire : Non

Exemple d’encapsulation (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "TextBlock",
			"text": "**wrap: false** Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat",
			"wrap": false
		},
		{
			"type": "TextBlock",
			"text": "**wrap: true** Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
			"wrap": true
		}
	]
}

style

Style de ce TextBlock pour l'accessibilité.

  • Type : TextBlockStyle?
  • Version : 1.5
  • Obligatoire : Non, valeur par défaut : "default"
  • Valeurs autorisées :
    • "default": il s’agit du style par défaut qui ne fournit aucun style ou comportement spécial.
    • "heading": TextBlock est un titre. Cela applique les valeurs par défaut du style de titre et marque le TextBlock titre comme en-tête pour l’accessiblité.

Exemple de style (JSON)

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.5",
	"body": [
		{
			"type": "TextBlock",
			"text": "Style set to heading",
			"style": "heading",
			"wrap": true
		},
		{
			"type": "TextBlock",
			"text": "Style set to heading, color set to good",
			"style": "heading",
			"color": "good",
			"wrap": true
		},
		{
			"type": "TextBlock",
			"text": "Style set to default",
			"style": "default",
			"wrap": true
		},
		{
			"type": "TextBlock",
			"text": "Style unset",
			"wrap": true
		}
	]
}

Secours

Décrit ce qu’il faut faire lorsqu’un élément inconnu est rencontré ou si les besoins de ce ou de tous les enfants ne peuvent pas être rencontrés.

  • Type : Element, FallbackOption
  • Version : 1.2
  • Obligatoire : Non
  • Valeurs autorisées :
    • ActionSet, ColumnSet, Container, FactSet, Image, ImageSet, Input.ChoiceSet, Input.Date, Input.Number, Input.Text, Input.Time, Input.Toggle, Media, RichTextBlock, Table, TextBlock
    • "drop": provoque la suppression immédiate de cet élément lorsque des éléments inconnus sont rencontrés. L'élément inconnu ne se propage pas plus haut.

height

Spécifie la hauteur de l’élément.

  • Type : BlockElementHeight
  • Version : 1.1
  • Obligatoire : Non
  • Valeurs autorisées :
    • "auto": la hauteur du conteneur sera déterminée par la hauteur de son contenu.
    • "stretch": le conteneur étire sa hauteur jusqu’à la hauteur restante disponible du conteneur parent.

séparateur

Quand true, dessinez une ligne de séparation en haut de l’élément.

  • Type : boolean
  • Obligatoire : Non

espacement

Contrôle la quantité d’espacement entre cet élément et l’élément précédent.

  • Type : Spacing
  • Obligatoire : Non
  • Valeurs autorisées :
    • "default", "none", "small", "medium", "large", "extraLarge", "padding"

pièce d'identité

Identificateur unique associé à l’élément.

  • Type : string
  • Obligatoire : Non

isVisible

Si false, cet élément sera supprimé de l’arborescence visuelle.

  • Type : boolean
  • Version : 1.2
  • Obligatoire : Non, valeur par défaut : true

Exige

Série de paires clé/valeur indiquant les fonctionnalités requises par l’élément avec la version minimale correspondante. Lorsque qu’une fonctionnalité est manquante ou n'est pas à la version requise, un mécanisme de secours est déclenché.

  • Type : Dictionary<string>
  • Version : 1.2
  • Obligatoire : Non