Composant Transfer — sgcHTML | eSeGeCe

Transfer

TsgcHTMLComponent_Transfer — affichez un widget de transfert à double liste qui déplace des éléments entre un panneau disponible et un panneau assigné, avec filtrage et liaison aux jeux de données, en Delphi, C++ Builder et .NET.

TsgcHTMLComponent_Transfer

Ajoutez des éléments (ou liez un jeu de données), laissez le visiteur les déplacer entre les deux panneaux avec les boutons, un double-clic, ou le champ de filtre, puis lisez la propriété HTML.

Classe du composant

TsgcHTMLComponent_Transfer

Produit

Un widget à deux panneaux Bootstrap 5 + CSS dédié

Langages

Delphi, C++ Builder, .NET

Ajoutez des éléments, définissez un nom de champ, affichez-le

Appelez AddItem pour chaque ligne (ou LoadFromDataSet pour tout un jeu de données), définissez FieldName pour que les éléments assignés soient soumis comme champs cachés, puis lisez 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

Propriétés & méthodes clés

Les membres que vous utilisez le plus souvent.

Éléments

Items contient les lignes, chacune un TsgcHTMLTransferItem avec Value, Text, Assigned et Disabled.

AddItem

AddItem(aValue, aText, aAssigned) ajoute une ligne et la place dans le panneau source ou cible.

LoadFromDataSet

LoadFromDataSet(aDataSet, aValueField, aTextField, aAssignedField) vide Items et le repeuple à partir d'un TDataSet.

Libellés des panneaux

TitleSource/TitleTarget nomment les deux panneaux ; AddCaption/RemoveCaption/AddAllCaption/RemoveAllCaption nomment les quatre boutons de déplacement.

Filtrage

ShowFilter ajoute un champ de recherche en direct à chaque panneau ; FilterPlaceholder remplace son texte d'indication.

Soumission du formulaire

FieldName émet un champ caché par élément assigné lors de la soumission ; Height plafonne la zone de défilement de chaque panneau ; TransferID définit l'id de l'élément.

Continuez l'exploration

Aide en ligneRéférence API complète et guide d’utilisation pour ce composant.
Tous les composants sgcHTMLParcourez la matrice complète des fonctionnalités de plus de 80 composants.
Télécharger la version d'essai gratuiteLa version d'essai de 30 jours fournit les projets de démonstration 60.HTML.
TarifsLicences Single, Team et Site avec code source complet.

Prêt à démarrer ?

Téléchargez la version d'essai gratuite et commencez à créer des interfaces web en Delphi, C++ Builder et .NET.