0

チェックボックスリストを Web パーツに追加しようとしています。編集モードでは、リストのフィールド名を含むドロップダウン リストが表示され、選択したフィールドが Web パーツのチェックボックス リスト エントリの表示として使用されます。

これを機能させる方法の例を見つけることができませんでした。

4

1 に答える 1

1

カスタムToolPartを使用して、ドロップダウン プロパティを次のように作成します。

public class DropdownToolPart : ToolPart
{
  protected override void CreateChildControls()
  {
    DropDownList dropdownList = new DropDownList();

    // Code to add field names from SharePoint List to dropdownlist

    this.Controls.Add(dropdownList);

    base.CreateChildControls();
  }

  public override void ApplyChanges()
  {
    CheckBoxListWebPart myWebPart = 
      (CheckBoxListWebPart)this.ParentToolPane.SelectedWebPart;

    //You will need to get the selected value of the dropdown by finding it 
    //in the Controls collection.
    string selectedValue = ...    

    myWebPart.CheckBoxListDisplayField = selectedValue;
  }
}

を含めるには、WebPart で次の操作を行う必要がありますToolPart

public class CheckBoxListWebPart: WebPart
{
  public string CheckBoxListDisplayField { get; set; }      

  public override ToolPart[] GetToolParts()
  {
    ToolPart[] toolParts = new ToolPart[1];

    DropdownToolPart myToolPart = new ToolPart();
    toolParts[0] = myToolPart;

    return toolParts;
  }
}

CreateChildControlsそこから、 のメソッドでチェックボックス リストを作成できるはずですCheckBoxListWebPart。そこで、SharePoint リストからアイテムをロードし、値を使用してCheckBoxListDisplayField各アイテムから正確なフィールド値を選択する必要があります。

于 2013-01-04T14:36:15.613 に答える