2013-01-04 35 views
0

我想添加一个复选框列表到webpart。在编辑模式下,会出现一个下拉列表,其中将包含列表中的字段名称,并且所选字段将用作Web部件中复选框列表条目的显示。使用下拉列表我webpart(编辑模式)

我一直无法找到任何有关如何使这项工作的例子。

回答

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; 
    } 
} 

从那里,你应该能够创建CheckBoxListWebPartCreateChildControls方法中的复选框列表。在那里,您需要从SharePoint列表中加载项目,然后使用CheckBoxListDisplayField值从每个项目中选择确切的字段值。

+0

感谢您的输入..在ApplyChanges中,webpart没有任何控件,所有属性都为空......我该如何解决这个问题? – Birger

相关问题