Blocos de construção somente leitura para páginas de registro: um crachá de status, um endereço postal e uma forma de ler o valor de uma coluna em código sem decodificar o formato da linha.
Para ramificar em um valor (tintar um status, mostrar uma flag, comparar uma data), leia o valor bruto da coluna em vez do rótulo, que é localizado. No React, useColumnValue(columnName) retorna o valor de uma coluna do circundante RecordContext como um tipo JavaScript simples, com a string formatada e os metadados da coluna ao lado. No Blazor, leia o valor digitado do registro com GetValueOrDefault<T>. De qualquer forma, uma coluna que está vazia ou retida pela segurança da coluna se lê como null; CanReadColumn distingue os dois.
function OpenMessage() {
const { raw: state } = useColumnValue<number>('statecode');
return state === 0 ? <p>Este caso ainda está aberto.</p> : null;
}
<RecordContext table="incident" queryParameterName="id">
<OpenMessage />
</RecordContext><RecordContext TableName="incident" QueryParameterName="id">
<ContextTemplate>
@if (IsActive(context))
{
<p>Este caso ainda está aberto.</p>
}
</ContextTemplate>
</RecordContext>
@code {
// Valor é nulo quando a coluna está vazia ou retida, então nulo nunca conta como ativo.
private static bool IsActive(TableRecord record)
=> record.GetValueOrDefault<ChoiceValue>("statecode")?.Value == 0;
}Fora de um RecordContext, como em um renderizador de grade ou em uma dica de gráfico, chame readColumnRawValue(record, columnName) de @powerportalspro/core sobre o registro que você mantém.
ColumnStatusBadge mostra a razão de status do disco (statuscode) e toma sua cor do estado (statecode): um tom de marca enquanto ativo, um contorno neutro caso contrário. A cor vem do valor do estado, não do rótulo, então ela vale em todos os idiomas. Nada é renderizado quando o rótulo está vazio ou retido.
Para uma tabela com mais de dois estados, passe uma Tone função que mapeie o valor do estado para uma cor e aparência do distintivo. Ela recebe null quando o estado está vazio ou retido.
<ColumnStatusBadge
tone={(state) =>
state === 0 ? { color: 'success', appearance: 'tint' }
: state === 1 ? { color: 'informative', appearance: 'outline' }
: { color: 'danger', appearance: 'tint' }}
/><ColumnStatusBadge Tone="@(state => state switch
{
0 => new StatusBadgeTone(BadgeColor.Success, BadgeAppearance.Tint),
1 => new StatusBadgeTone(BadgeColor.Informative, BadgeAppearance.Outline),
_ => new StatusBadgeTone(BadgeColor.Danger, BadgeAppearance.Tint),
})" />AddressDisplayValue renderiza um dos endereços de uma tabela (address1, address2, ...) em um <address> elemento, com o mesmo rótulo de ColumnDisplayValue. Ele mostra a coluna do _composite Dataverse quando o usuário pode lê-la. Caso contrário, ele compõe as linhas das ruas, depois cidade, região e código postal, e depois o país, que omite quando corresponde HomeCountrya .
Nome | Tipo | Padrão | Descrição |
|---|---|---|---|
IsVisible | bool | True | O distintivo é visível? |
LabelColumn | string | statuscode | Coluna cujo valor formatado é o texto do distintivo. Padrão para |
Size | BadgeSize? | Tamanho do distintivo. Padrão é o próprio do Fluent. | |
StateColumn | string | statecode | Coluna cujo valor determina o tom. Padrão para |
Tone | Func<int?, StatusBadgeTone>? | Escolhe o tom do valor da coluna de estado — null quando está vazia ou retido. Padrão para StatusBadgeTone.Default(System.Nullable{System.Int32}): um tom de marca para ativo ( |
IsVisibleLabelColumnSizeStateColumnTonenull quando está vazia ou retido. Padrão para StatusBadgeTone.Default(System.Nullable{System.Int32}): um tom de marca para ativo (Nome | Tipo | Padrão | Descrição |
|---|---|---|---|
Description | string? | Descrição será exibida na dica de ferramenta. Volta ao | |
DisplayLabelWhenAvailable | bool | True | Especifica se deve exibir um rótulo se disponível. |
DisplayTooltipWhenAvailable | bool | True | Especifica se deve exibir uma dica de ferramenta, se disponível. |
EmptyPlaceholder | string | — | Texto mostrado quando o endereço está vazio. Padrão para um traço em; passar uma string vazia para Suprimir. |
HomeCountry | string? | O país para deixar de fora um endereço composto, por exemplo, 'Estados Unidos' para um portal cujo Endereços são quase todos domésticos. Comparado ignorando casos e sotaques. Não se aplica quando o endereço é o próprio composto do Dataverse, que é mostrado enquanto o Dataverse o formata. | |
IsVisible | bool | True | O endereço é visível? |
Label | string? | Texto a ser exibido como uma etiqueta. Volta para a etiqueta da | |
Prefix | string | address1 | O prefixo da coluna do endereço — |
DescriptionDisplayLabelWhenAvailableDisplayTooltipWhenAvailableEmptyPlaceholderHomeCountryIsVisibleLabelPrefix