2012-05-22 16 views
0

您好我想在visualforce創建這樣一個接口visualforce接口

image

其中第一列中的值將來自頂點控制器

請給在visualforce.Also這樣的一些想法用戶將移動到第二列的值將保存在某處。我正在考慮使用自定義設置,所有選項都可用。

感謝

回答

2

不幸的是利用您已經在VisualForce描述功能的唯一方法是使用一個<apex:inputField>標記,結合多列表字段上的sObject。該選項爲您提供了一個保存數據的地方,但您需要事先在配置中指定可能的值(它聽起來不像您想要的那樣)。

如果您想要動態填充值,您需要在控制器中創建一個SelectOptions列表,並將該列表綁定到標記,並設置multiselect屬性集(請記住,這不會爲您提供您在屏幕截圖中顯示的花式左右箭頭,但它將允許用戶通過shift/ctrl單擊選擇多個選項)。

VisualForce片段:

<apex:selectList value="{!multiPicklistVal}" multiselect="true"> 
    <apex:selectOptions value="{!multiPicklistOptions}"/> 
</apex:selectList> 

的Apex控制器片斷:

public String[] multiPicklistVal {public get; public set;} 
public List<SelectOption> getMultiPicklistOptions() { 
    List<SelectOption> opts = new List<SelectOption>(); 
    opts.add(new SelectOption('Red', 'Red')); 
    opts.add(new SelectOption('Green', 'Green')); 
    opts.add(new SelectOption('Blue', 'Blue')); 
    return opts; 
} 

這種方法可以讓你引用動作方法multiPicklistVal作爲一個字符串數組,每個已被選定用戶。從這裏開始,您可以像上面提到的那樣將它們保存在自定義設置中,也可以保存在自定義對象中(但如果您要使用自定義對象路由,則可以使用即用型功能I描述在這篇文章的頂部)。