Transfer Component — sgcHTML | eSeGeCe

Transfer

TsgcHTMLComponent_Transfer — renderizza un widget di trasferimento a doppia lista che sposta elementi tra un pannello disponibile e uno assegnato, con filtro e binding a dataset, in Delphi, C++ Builder e .NET.

TsgcHTMLComponent_Transfer

Aggiungi elementi (oppure collega un dataset), lascia che il visitatore li sposti tra i due pannelli con i pulsanti, un doppio clic o la casella filtro, quindi leggi la proprietà HTML.

Classe del componente

TsgcHTMLComponent_Transfer

Renderizza

Bootstrap 5 dual-panel widget + scoped CSS

Famiglia

Moduli e Campi

Linguaggi

Delphi, C++ Builder, .NET

Aggiungi gli elementi, imposta un nome campo, renderizzalo

Chiama AddItem per ogni riga (oppure LoadFromDataSet per un intero dataset), imposta FieldName in modo che gli elementi assegnati vengano inviati come input nascosti, quindi leggi HTML.

uses
  sgcHTML_Component_Transfer;

var
  oTransfer: TsgcHTMLComponent_Transfer;
begin
  oTransfer := TsgcHTMLComponent_Transfer.Create(nil);
  try
    oTransfer.TransferID := 'roles';
    oTransfer.FieldName := 'roles';
    oTransfer.TitleSource := 'Available roles';
    oTransfer.TitleTarget := 'Assigned roles';
    oTransfer.ShowFilter := True;
    oTransfer.Height := '260px';

    oTransfer.AddItem('admin', 'Administrator');
    oTransfer.AddItem('editor', 'Editor', True);
    oTransfer.AddItem('viewer', 'Viewer');

    WebModule.Response := oTransfer.HTML;   // dual panels + buttons + script
  finally
    oTransfer.Free;
  end;
end;

// Or bind it straight to a dataset:
oTransfer.LoadFromDataSet(qryRoles, 'RoleId', 'RoleName', 'IsAssigned');
// includes: sgcHTML_Component_Transfer.hpp

TsgcHTMLComponent_Transfer *oTransfer = new TsgcHTMLComponent_Transfer(NULL);
try
{
  oTransfer->TransferID = "roles";
  oTransfer->FieldName = "roles";
  oTransfer->TitleSource = "Available roles";
  oTransfer->TitleTarget = "Assigned roles";
  oTransfer->ShowFilter = true;
  oTransfer->Height = "260px";

  oTransfer->AddItem("admin", "Administrator", false);
  oTransfer->AddItem("editor", "Editor", true);
  oTransfer->AddItem("viewer", "Viewer", false);

  String html = oTransfer->HTML;   // dual panels + buttons + script
}
__finally
{
  delete oTransfer;
}
using esegece.sgcWebSockets;

var transfer = new TsgcHTMLComponent_Transfer();
transfer.TransferID = "roles";
transfer.FieldName = "roles";
transfer.TitleSource = "Available roles";
transfer.TitleTarget = "Assigned roles";
transfer.ShowFilter = true;
transfer.Height = "260px";

transfer.AddItem("admin", "Administrator", false);
transfer.AddItem("editor", "Editor", true);
transfer.AddItem("viewer", "Viewer", false);

string html = transfer.HTML;   // dual panels + buttons + script

Proprietà e metodi principali

I membri che utilizzerai più spesso.

Items

Items contiene le righe, ciascuna un TsgcHTMLTransferItem con Value, Text, Assigned e Disabled.

AddItem

AddItem(aValue, aText, aAssigned) aggiunge una riga e la colloca nel pannello sorgente o di destinazione.

LoadFromDataSet

LoadFromDataSet(aDataSet, aValueField, aTextField, aAssignedField) svuota Items e lo ripopola a partire da un TDataSet.

Didascalie dei pannelli

TitleSource/TitleTarget etichettano i due pannelli; AddCaption/RemoveCaption/AddAllCaption/RemoveAllCaption etichettano i quattro pulsanti di spostamento.

Filtro

ShowFilter aggiunge una casella di ricerca live a ciascun pannello; FilterPlaceholder sovrascrive il relativo testo segnaposto.

Invio dei dati

FieldName genera un input nascosto per ogni elemento assegnato all’invio del modulo; Height limita l’area di scorrimento di ciascun pannello; TransferID imposta l’id dell’elemento.

Continua a esplorare

Guida in lineaRiferimento API completo e guida all’uso per questo componente.
Tutti i componenti sgcHTMLEsplora la matrice completa delle funzionalità di oltre 80 componenti.
Scarica la Prova GratuitaLa prova di 30 giorni include i progetti demo 60.HTML.
PrezziLicenze Single, Team e Site con codice sorgente completo.

Pronto a Iniziare?

Scarica la versione di prova gratuita e inizia a creare interfacce web in Delphi, C++ Builder e .NET.