MultiSelect コンポーネント — sgcHTML | eSeGeCe

MultiSelect

TsgcHTMLComponent_MultiSelect — Delphi、C++ Builder、.NET で、チップ、グループ化されたオプション、データセットバインディングを備えた検索可能なマルチセレクトドロップダウンをレンダリングします。

TsgcHTMLComponent_MultiSelect

選択項目をチップとして保持するドロップダウンコントロールです。オプションを追加し(またはデータセットをバインドし)、任意でグループ化し、選択数の上限を設定してから、HTML プロパティを読み取ります。

コンポーネントクラス

TsgcHTMLComponent_MultiSelect

レンダリング内容

Bootstrap ドロップダウン + チップ(自己完結型ウィジェット)

ファミリー

フォーム & 入力

言語

Delphi, C++ Builder, .NET

オプションを追加し、レンダリングする

PlaceholderFieldNameSize を設定し、AddOption でオプションを追加(または LoadFromDataSet でバインド)してから、HTML を読み取ります。

uses
  sgcHTML_Component_MultiSelect;

var
  oMulti: TsgcHTMLComponent_MultiSelect;
begin
  oMulti := TsgcHTMLComponent_MultiSelect.Create(nil);
  try
    oMulti.FieldName := 'tags';
    oMulti.Placeholder := 'Select tags';
    oMulti.MaxSelections := 3;
    oMulti.Size := mssLarge;

    oMulti.AddOption('js', 'JavaScript', True);
    oMulti.AddOption('py', 'Python');
    oMulti.AddOption('pas', 'Pascal');

    WebModule.Response := oMulti.HTML;   // dropdown + chips + hidden inputs
  finally
    oMulti.Free;
  end;
end;

// Or fill it straight from a dataset:
oMulti.LoadFromDataSet(qryTags, 'Code', 'Name', 'IsSelected');
// includes: sgcHTML_Component_MultiSelect.hpp

TsgcHTMLComponent_MultiSelect *oMulti = new TsgcHTMLComponent_MultiSelect(NULL);
try
{
  oMulti->FieldName = "tags";
  oMulti->Placeholder = "Select tags";
  oMulti->MaxSelections = 3;
  oMulti->Size = mssLarge;

  oMulti->AddOption("js", "JavaScript", true);
  oMulti->AddOption("py", "Python");
  oMulti->AddOption("pas", "Pascal");

  String html = oMulti->HTML;   // dropdown + chips + hidden inputs
}
__finally
{
  delete oMulti;
}
using esegece.sgcWebSockets;

var multi = new TsgcHTMLComponent_MultiSelect();
multi.FieldName = "tags";
multi.Placeholder = "Select tags";
multi.MaxSelections = 3;
multi.Size = TsgcHTMLMultiSelectSize.mssLarge;

multi.AddOption("js", "JavaScript", true);
multi.AddOption("py", "Python");
multi.AddOption("pas", "Pascal");

string html = multi.HTML;   // dropdown + chips + hidden inputs

主なプロパティとメソッド

最もよく使うメンバーです。

Options

OptionsTsgcHTMLMultiSelectOption のコレクションです(各項目は ValueTextSelectedDisabledGroup を持ちます)。

Adding options

AddOption(aValue, aText, aSelected) は 1 件のエントリを追加します。グループ化されたエントリは同じ Group 値を共有し、ドロップダウンヘッダーの下にレンダリングされます。

Dataset binding

LoadFromDataSet(aDataSet, aValueField, aTextField, aSelectedField) は、クエリから Options をクリアして再構築します。

ShowSearch(デフォルト True)は、ドロップダウン内にフィルターボックスを追加します。SearchPlaceholderNoResultsText は、そのキャプションを上書きし、指定しない場合は使用中のロケールにフォールバックします。

Limits & sizing

MaxSelections は、一度に選択できるチップの数を制限します(0 は無制限を意味します)。SizemssDefaultmssSmallmssLarge)は、Bootstrap の form-select のサイズ指定に対応します。

Posting the value

FieldName は、選択されたオプションごとに 1 つの非表示 <input> をレンダリングし、フォームがすべての値を送信できるようにします。MultiSelectID は要素の id を設定します。

さらに詳しく

オンラインヘルプこのコンポーネントの完全な API リファレンスと使用ガイドです。
すべての sgcHTML コンポーネント80 以上のコンポーネントの全機能マトリックスを閲覧できます。
無料体験版のダウンロード30 日間の体験版には 60.HTML デモプロジェクトが付属します。
価格完全なソースコード付きの Single、Team、Site ライセンス。

始める準備はできましたか?

無料体験版をダウンロードして、Delphi、C++ Builder、.NET で Web UI の構築を始めましょう。