Elemento TextBlock

Nota:

¿Está creando escenarios de Copilot, Teams o Outlook con tecnología de tarjetas adaptables? Visite el Centro de documentación de tarjetas adaptables, la nueva tienda única para todas sus necesidades de tarjeta adaptable. Tiene todos los recursos que busca, incluida la documentación completa para muchas características nuevas, como diseño dinámico, icono, distintivo, carrusel, gráficos, etc.

En esta página se proporciona documentación para el TextBlock elemento en el esquema de tarjetas adaptables.

Nota importante sobre la accesibilidad: En la versión 1.3 del esquema se introdujo una propiedad label en Entradas para mejorar la accesibilidad. Si la aplicación host a la que se dirige admite la versión 1.3, debería usar 'label' en lugar de TextBlock, como se muestra en algunos ejemplos a continuación. Una vez que la mayoría de las aplicaciones host se hayan actualizado a la versión más reciente, actualizaremos los ejemplos según corresponda.

TextBlock

Muestra texto, lo que permite controlar los tamaños de fuente, el peso y el color.

Propiedades de TextBlock

Propiedad Tipo Obligatorio Description Versión
type "TextBlock" Debe ser "TextBlock". 1,0
text string Texto que se va a mostrar. Se admite un subconjunto de Markdown (https://aka.ms/ACTextFeatures) 1,0
color Colors? No Controla el color de los TextBlock elementos. 1,0
fontType FontType? No Tipo de fuente que se va a usar para la representación 1.2
horizontalAlignment HorizontalAlignment? No Controla la alineación horizontal del texto. Cuando no se especifica, el valor de horizontalAlignment se hereda del contenedor primario. Si no hay ningún contenedor primario establecido horizontalAlignment, el valor predeterminado es Left. 1,0
isSubtle boolean? No Si true, muestra el texto ligeramente atenuado para que aparezca menos destacado. 1,0
maxLines number No Especifica el número máximo de líneas que se van a mostrar. 1,0
tamaño FontSize? No Controla el tamaño del texto. 1,0
weight FontWeight? No Controla el peso de los TextBlock elementos. 1,0
envolver boolean No Si true, permita que el texto se ajuste al espacio disponible. De lo contrario, el texto se recorta. 1,0
estilo TextBlockStyle? No, valor predeterminado: "default" El estilo de este bloque de texto con fines de accesibilidad. 1.5

Propiedades heredadas

Propiedad Tipo Obligatorio Description Versión
Alternativa Element, FallbackOption No Describe qué hacer cuando se encuentra un elemento desconocido o no se pueden cumplir los requisitos de este o de cualquier elemento secundario. 1.2
height BlockElementHeight No Especifica el alto del elemento. 1.1
separator boolean No Cuando true, dibuje una línea de separación en la parte superior del elemento. 1,0
espaciamiento Spacing No Controla la cantidad de espaciado entre este elemento y el elemento anterior. 1,0
ID string No Identificador único asociado al elemento. 1,0
isVisible boolean No, valor predeterminado: true Si false es cierto, este elemento se quitará del árbol visual. 1.2
Requiere Dictionary<string> No Serie de pares clave-valor que indican las características que el elemento requiere con la versión mínima correspondiente. Cuando una característica está ausente o una versión es inadecuada, se activa el mecanismo de respaldo. 1.2

Example

Ejemplo básico 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"
		}
	]
}

Propiedades

texto

Texto que se va a mostrar. Se admite un subconjunto de Markdown (https://aka.ms/ACTextFeatures)

  • Tipo: string
  • Obligatorio: Sí

color

Controla el color de los elementos TextBlock.

  • Tipo: Colors?
  • Obligatorio: No
  • Valores permitidos:
    • "default"
    • "dark"
    • "light"
    • "accent"
    • "good"
    • "warning"
    • "attention"

Ejemplo de color (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"
		}
	]
}

tipo de fuente

Tipo de fuente que se va a usar para la representación

  • Tipo: FontType?
  • Versión: 1.2
  • Obligatorio: No
  • Valores permitidos:
    • "default"
    • "monospace"

Ejemplo de FontType (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

Controla la alineación horizontal del texto. Cuando no se especifica, el valor de horizontalAlignment se hereda del contenedor primario. Si no hay ningún contenedor primario establecido horizontalAlignment, el valor predeterminado es Left.

  • Tipo: HorizontalAlignment?
  • Obligatorio: No
  • Valores permitidos:
    • "left"
    • "center"
    • "right"

Ejemplo de HorizontalAlignment (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 está activado, muestra el texto ligeramente atenuado para que aparezca menos destacado.

  • Tipo: boolean?
  • Obligatorio: No

Ejemplo de isSubtle (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

Especifica el número máximo de líneas que se van a mostrar.

  • Tipo: number
  • Obligatorio: No

Ejemplo de maxLines (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

Controla el tamaño del texto.

  • Tipo: FontSize?
  • Obligatorio: No
  • Valores permitidos:
    • "default"
    • "small"
    • "medium"
    • "large"
    • "extraLarge"

Ejemplo de tamaño (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

Controla el peso de los TextBlock elementos.

  • Tipo: FontWeight?
  • Obligatorio: No
  • Valores permitidos:
    • "default"
    • "lighter"
    • "bolder"

Ejemplo de peso (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"
		}
	]
}

envolver

Si true, permita que el texto se envuelva. De lo contrario, el texto se recorta.

  • Tipo: boolean
  • Obligatorio: No

Ejemplo de envoltorio (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

El estilo de este bloque de texto para fines de accesibilidad.

  • Tipo: TextBlockStyle?
  • Versión: 1.5
  • Obligatorio: No, valor predeterminado: "default"
  • Valores permitidos:
    • "default": este es el estilo predeterminado que no proporciona ningún estilo o comportamiento especial.
    • "heading": El TextBlock es un encabezado. Para la accesibilidad, esto aplicará los valores predeterminados de estilo de encabezado y marcará el TextBlock como encabezado.

Ejemplo de estilo (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
		}
	]
}

Reserva

Describa qué hacer cuando se encuentra un elemento desconocido o no se puedan satisfacer los requisitos de este o de cualquier elemento secundario.

  • Tipo: Element, FallbackOption
  • Versión: 1.2
  • Obligatorio: No
  • Valores permitidos:
    • ActionSet, ColumnSet, Container, FactSet, Image, ImageSet, Input.ChoiceSet, Input.Date, Input.Number, Input.Text, Input.Time, Input.Toggle, Media, RichTextBlock, Table, TextBlock
    • "drop": hace que este elemento se quite inmediatamente cuando se encuentren elementos desconocidos. El elemento desconocido no se propaga más arriba.

altura

Especifica el alto del elemento.

  • Tipo: BlockElementHeight
  • Versión: 1.1
  • Obligatorio: No
  • Valores permitidos:
    • "auto": el alto del contenedor se determinará mediante el alto de su contenido.
    • "stretch": El contenedor estirará su altura al alto restante disponible del contenedor padre.

separador

Cuando true, dibuje una línea de separación en la parte superior del elemento.

  • Tipo: boolean
  • Obligatorio: No

espaciamiento

Controla la cantidad de espaciado entre este elemento y el elemento anterior.

  • Tipo: Spacing
  • Obligatorio: No
  • Valores permitidos:
    • "default", "none", "small", "medium", "large", , "extraLarge""padding"

id

Identificador único asociado al elemento.

  • Tipo: string
  • Obligatorio: No

isVisible

Si false es cierto, este elemento se quitará del árbol visual.

  • Tipo: boolean
  • Versión: 1.2
  • Obligatorio: No, valor predeterminado: true

Requiere

Serie de pares clave-valor que indican las características que el elemento requiere con la versión mínima correspondiente. Cuando una característica está ausente o una versión es inadecuada, se activa el mecanismo de respaldo.

  • Tipo: Dictionary<string>
  • Versión: 1.2
  • Obligatorio: No