B-Arts DocumentationIndice generale

BTesto<T>

BTesto<T> è il controllo di input tipizzato B-Arts per testo, numeri, valuta, data e ora. Supporta binding Blazor, formattazione, conversione tramite le funzioni B-Arts, calendario, help button, autocomplete, accessibilità e controllo del focus.

Tipo generico e binding

Proprietà Uso
Value Valore tipizzato T del controllo.
ValueChanged Callback emesso quando cambia il valore.
ValueExpression Espressione opzionale usata dalla validazione standard Blazor.
Text Rappresentazione convertita del contenuto; viene gestita dal controllo.

Il modo più comune di usare i primi tre parametri è @bind-Value. EditForm non è obbligatorio: è soltanto un'eventuale integrazione standard Blazor.

Scegliere BType coerente con il modello B-Arts: normalmente string, int, double, double?, DateTime o DateTime?. Per conversioni esterne al binding usare BConvert.

Tipi di dato

DataType accetta:

Valore Comportamento
Alfanumerico Testo libero secondo MaxLength e CharsAllows.
Alfabetico Input testuale alfabetico gestito dall'interop B-Arts.
Numerico Input numerico non formattato come valuta.
Valuta Numero formattato con BGlobal.FormattaNumero.
Data Data formattata con BGlobal.FormattaData; può usare il calendario.
Ora Ora formattata con BGlobal.FormattaOra.

L'enum pubblica eJSTipo (NESSUNO, NUMERICO, ALFABETICO) è usata dall'interop interno; nel codice applicativo scegliere normalmente DataType.

Formato del testo e numeri

Proprietà Uso
TextFormat NESSUNO, MAIUSCOLO o MINUSCOLO.
NumDec Numero di decimali per Valuta; valore predefinito 2.
ValutaAcceptNULL Se true, il campo valuta vuoto restituisce null; altrimenti restituisce zero.
MaxLength Lunghezza massima dell'input.
CharsAllows Elenco/regola di caratteri ammessi trasmessa al controllo JavaScript.

Help button e calendario

Proprietà/evento Uso
HelpButton Mostra il pulsante laterale.
TextHelpButton Testo o simbolo del pulsante; predefinito ....
OnHelpButtonClick Callback alla pressione del pulsante.
ActiveCalendarOnHelpButton Per un campo Data, apre automaticamente il calendario.

ShowCalendar() e HideCalendar() controllano il calendario da codice. SetAcitveCalendarOnHelpButton(...) mantiene la grafia effettiva dell'API.

Autocomplete

Proprietà/evento Uso
AutoComplete Abilita il completamento automatico.
AutoCompleteSearch Funzione asincrona che riceve il testo e restituisce List<BItem>.
AutoCompleteMinLength Numero minimo di caratteri prima della ricerca; predefinito 2.
AutoCompleteDelay Attesa in millisecondi prima della ricerca; predefinito 300.
AutoCompleteValue Codice del BItem selezionato, distinto dal testo descrittivo.
AutoCompleteValueChanged Callback per il codice selezionato; consente @bind-AutoCompleteValue.
AutoCompleteCheckValue Se true, accetta soltanto un valore risolto dall'elenco.
AutoCompleteGetItem Risolve un BItem partendo da un codice già assegnato.

ValidateAutoComplete(text) forza la verifica; SelectAutoCompleteItem(index) seleziona un risultato. HideAutoCompleteFromJS() è destinato all'interop e normalmente non va chiamato dall'applicazione.

Focus, navigazione e validazione

Proprietà/metodo Uso
CtlNextFocus ID del controllo a cui passare il focus.
SetCtlNextFocus(id) Aggiorna destinazione e interop a runtime.
SetFocus() Porta il focus sull'input.
SelectAll() Seleziona tutto il testo.
ForceValidateText() Forza la validazione/formattazione lato controllo.
SetValue(text) Assegna testo, converte il valore e notifica il binding.

OnTextChange(...) è pubblico per l'interop JavaScript; nel normale codice Razor usare il binding o SetValue(...). Anche BTesto_HelpButtonClick() è un punto di ingresso dell'interop: il codice applicativo deve collegarsi a OnHelpButtonClick.

Aspetto e accessibilità

Proprietà Uso
Placeholder Suggerimento mostrato nell'input.
AriaLabel Etichetta accessibile; predefinita Casella di testo.
Width, Height Dimensioni del contenitore.
StyleInput Stile inline specifico dell'input.
CssClassInput Classe dell'input.
CssClassContainer Classe del contenitore.
CssClassHelpButton Classe del pulsante help.
CssClassTextHelpButton Classe del contenuto del pulsante.
CssClassCalendarContainer Classe del calendario.
CssClassCalendarContainerRight Classe usata per il posizionamento alternativo del calendario.
CssClassAutoCompleteContainer Classe del popup autocomplete.
CssClassAutoCompleteItem Classe di un risultato.
CssClassAutoCompleteHighlight Classe della parte evidenziata del risultato.

Eredita inoltre da BBaseControl: Id, ClientId, CssClass, Style, Visible, VisibleChanged, Disabled, DisabledChanged e TabIndex.

Configurazione dinamica

Quando la configurazione cambia dopo l'inizializzazione, preferire i metodi pubblici che aggiornano anche rendering o JavaScript:

  • SetDataType(...)

  • SetTextFormat(...)

  • SetNumDec(...)

  • SetValutaAcceptNULL(...)

  • SetHelpButton(...)

  • SetAcitveCalendarOnHelpButton(...)

  • SetMaxLength(...)

  • SetAutocomplete(...)

  • SetEnabled(...)

Esempi

Vedere BTesto.Examples.md.

<!-- BEGIN GENERATED API -->

Riferimento API completo

Identità

  • Namespace: B.BWeb.BControls

  • Assembly: BFrameworkWebControls

  • Tipo: class

  • Classe base: BBaseJSControl

  • Interfacce: IAsyncDisposable, IComponent, IHandleAfterRender, IHandleEvent

  • Sorgente API: versione 5.0.1

Dichiarazione

public class BTesto<BType> : BBaseJSControl, IComponent, IHandleEvent, IHandleAfterRender, IAsyncDisposable

Costruttori

  • BTesto()

Campi pubblici

Nessun campo pubblico dichiarato.

Proprietà

Proprietà Tipo Accesso
ActiveCalendarOnHelpButton bool get/set
AriaLabel string get/set
AutoComplete bool get/set
AutoCompleteCheckValue bool get/set
AutoCompleteDelay int get/set
AutoCompleteGetItem Func<string, Task<BItem>> get/set
AutoCompleteMinLength int get/set
AutoCompleteSearch Func<string, Task<List<BItem>>> get/set
AutoCompleteValue string get/set
AutoCompleteValueChanged EventCallback<string> get/set
CharsAllows string get/set
CssClassAutoCompleteContainer string get/set
CssClassAutoCompleteHighlight string get/set
CssClassAutoCompleteItem string get/set
CssClassCalendarContainer string get/set
CssClassCalendarContainerRight string get/set
CssClassContainer string get/set
CssClassHelpButton string get/set
CssClassInput string get/set
CssClassTextHelpButton string get/set
CtlNextFocus string get/set
DataType eDataType<BType> get/set
Height string get/set
HelpButton bool get/set
MaxLength int get/set
NumDec byte get/set
OnHelpButtonClick EventCallback get/set
Placeholder string get/set
StyleInput string get/set
Text object get
TextFormat eTextFormat<BType> get/set
TextHelpButton string get/set
Value BType get/set
ValueChanged EventCallback<BType> get/set
ValueExpression Expression<Func<BType>> get/set
ValutaAcceptNULL bool get/set
Width string get/set

Callback Blazor

  • AutoCompleteValueChanged: EventCallback<string>

  • OnHelpButtonClick: EventCallback

  • ValueChanged: EventCallback<BType>

Eventi CLR

Nessun evento CLR pubblico dichiarato.

Metodi

  • void BTesto_HelpButtonClick()

  • Task ForceValidateText()

  • void HideAutoCompleteFromJS()

  • void HideCalendar()

  • Task OnTextChange(string args)

  • Task SelectAll()

  • Task SelectAutoCompleteItem(int Index)

  • void SetAcitveCalendarOnHelpButton(bool value)

  • Task SetAutocomplete(bool NewValue, Func<string, Task<List<BItem>>> NewSearch = null, int NewMinLength = 2, int NewDelay = 300, bool NewCheckValue = false, Func<string, Task<BItem>> NewGetItem = null)

  • Task SetCtlNextFocus(string NewValue)

  • Task SetDataType(eDataType<BType> dataType, bool ReInitControl = true)

  • void SetEnabled(bool enabled)

  • Task SetFocus()

  • void SetHelpButton(bool value)

  • void SetMaxLength(int NewValue)

  • Task SetNumDec(byte dec)

  • Task SetTextFormat(eTextFormat<BType> format, bool ReInitControl = true)

  • Task SetValue(string NewText)

  • Task SetValutaAcceptNULL(bool AcceptNULL)

  • Task ShowCalendar()

  • Task ValidateAutoComplete(string NewText)

Tipi annidati pubblici

eDataType

  • Alfanumerico = 0

  • Alfabetico = 1

  • Numerico = 2

  • Valuta = 3

  • Data = 4

  • Ora = 5

eJSTipo

  • NESSUNO = 0

  • NUMERICO = 1

  • ALFABETICO = 2

eTextFormat

  • NESSUNO = 0

  • MAIUSCOLO = 1

  • MINUSCOLO = 2

Membri B-Arts ereditati

  • Proprietà da BBaseControl: string ClientId { get; }

  • Proprietà da BBaseControl: string CssClass { get; set; }

  • Proprietà da BBaseControl: bool Disabled { get; set; }

  • Proprietà da BBaseControl: EventCallback<bool> DisabledChanged { get; set; }

  • Proprietà da BBaseControl: string Id { get; set; }

  • Proprietà da BBaseControl: string Style { get; set; }

  • Proprietà da BBaseControl: int TabIndex { get; set; }

  • Proprietà da BBaseControl: bool Visible { get; set; }

  • Proprietà da BBaseControl: EventCallback<bool> VisibleChanged { get; set; }

  • Metodo da BBaseControl: Task SetDisabled(bool disabled)

  • Metodo da BBaseControl: Task SetVisible(bool visible)

  • Metodo da BBaseJSControl: void BJSControlIsInitialized()

  • Metodo da BBaseJSControl: ValueTask DisposeAsync()