Komponent Transfer — sgcHTML | eSeGeCe

Transfer

TsgcHTMLComponent_Transfer — renderuje widżet dwóch list, który przenosi elementy między panelem dostępnych i przypisanych, z filtrowaniem i wiązaniem z zestawem danych, w Delphi, C++ Builder i .NET.

TsgcHTMLComponent_Transfer

Dodaj elementy (lub powiąż zestaw danych), pozwól odwiedzającemu przenosić je między dwoma panelami za pomocą przycisków, dwukliku lub pola filtra, a następnie odczytaj właściwość HTML.

Klasa komponentu

TsgcHTMLComponent_Transfer

Renderuje

Widżet dwóch paneli Bootstrap 5 + dedykowany CSS

Języki

Delphi, C++ Builder, .NET

Dodaj elementy, ustaw nazwę pola, wyrenderuj

Wywołaj AddItem dla każdego wiersza (lub LoadFromDataSet dla całego zestawu danych), ustaw FieldName, aby przypisane elementy były przesyłane jako ukryte pola, a następnie odczytaj 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

Kluczowe właściwości i metody

Składniki, po które sięgasz najczęściej.

Elementy

Items przechowuje wiersze, każdy jako TsgcHTMLTransferItem z Value, Text, Assigned i Disabled.

Dodawanie elementu

AddItem(aValue, aText, aAssigned) dodaje wiersz i umieszcza go w panelu źródłowym lub docelowym.

Wiązanie z zestawem danych

LoadFromDataSet(aDataSet, aValueField, aTextField, aAssignedField) czyści Items i wypełnia je ponownie na podstawie TDataSet.

Nagłówki paneli

TitleSource/TitleTarget nadają etykiety dwóm panelom; AddCaption/RemoveCaption/AddAllCaption/RemoveAllCaption nadają etykiety czterem przyciskom przenoszenia.

Filtrowanie

ShowFilter dodaje do każdego panelu pole wyszukiwania na żywo; FilterPlaceholder nadpisuje jego tekst zastępczy.

Przesyłanie danych

FieldName generuje jedno ukryte pole na każdy przypisany element podczas wysyłania formularza; Height ogranicza obszar przewijania każdego panelu; TransferID ustawia identyfikator elementu.

Poznawaj dalej

Pomoc onlinePełna dokumentacja API i przewodnik użytkowania tego komponentu.
Wszystkie komponenty sgcHTMLPrzejrzyj pełną matrycę funkcji 80+ komponentów.
Pobierz bezpłatną wersję próbną30-dniowa wersja próbna zawiera projekty demonstracyjne 60.HTML.
CennikLicencje Single, Team i Site z pełnym kodem źródłowym.

Gotowy, aby zacząć?

Pobierz bezpłatną wersję próbną i zacznij budować interfejsy webowe w Delphi, C++ Builder i .NET.