嗨,我想在visualforce中创建一个这样的界面

其中第一列中的值将来自顶点控制器
请给出一些想法在visualforce.Also中做这件事,用户将移动到第二列的值将被保存在某个地方。我正在考虑使用自定义设置,都有哪些可用选项。
谢谢
发布于 2012-05-23 01:04:02
不幸的是,利用您在VisualForce中描述的功能的惟一方法是使用绑定到SObject上的多选择列表字段的<apex:inputField>标记。该选项为您提供了保存数据的位置,尽管您需要预先在配置中指定可能的值(听起来您并不想这样做)。
如果您希望动态填充这些值,则需要在控制器中创建一个SelectOptions列表,并将该列表绑定到设置了multiselect属性的<apex:selectlist>标记上(请记住,这不会给您提供屏幕截图中显示的花哨的左箭头和右箭头,但它允许用户通过按住shift/Ctrl键并单击来选择多个选项)。
VisualForce代码片段:
<apex:selectList value="{!multiPicklistVal}" multiselect="true">
<apex:selectOptions value="{!multiPicklistOptions}"/>
</apex:selectList>顶点控制器代码片段:
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;
}这种方法允许您在操作方法中以String数组的形式引用multiPicklistVal,每个字符串数组都是由用户选择的。从这里开始,你可以将它们保存在你提到的自定义设置中,或者保存在自定义对象中(但如果你打算使用自定义对象路线,你也可以使用我在本文顶部描述的开箱即用的功能)。
https://stackoverflow.com/questions/10705220
复制相似问题