Salesforce 设置数据表中选取列表的默认值

Salesforce 设置数据表中选取列表的默认值,salesforce,visualforce,Salesforce,Visualforce,我试图在数据表中创建一个动态选取列表。我可以用一个选择列表设置默认值,但如果有多个选择列表,则无法设置默认值。我还需要能够在任何行上存储它被更改为的任何值,这将有希望绑定到列表中的某个变量 为此,我在正在使用的对象(称为Vendor)上创建了一个新字段,名为“selected\u Vendor\u c”: 这是控制器: public List<selectOption> VendorList {get { List<selectOption&

我试图在数据表中创建一个动态选取列表。我可以用一个选择列表设置默认值,但如果有多个选择列表,则无法设置默认值。我还需要能够在任何行上存储它被更改为的任何值,这将有希望绑定到列表中的某个变量

为此,我在正在使用的对象(称为Vendor)上创建了一个新字段,名为“selected\u Vendor\u c”:


这是控制器:

           public List<selectOption> VendorList {get {
    List<selectOption> myVendorList = new List<selectOption>();
    for (Vendor__c vend : [select Name,id from Vendor__c])
        myVendorList.add(new selectOption(vend.id, vend.name));
    return myVendorList;
    }
    private set;
}
公共列表供应商列表{get{
List myVendorList=新列表();
对于(供应商c供应商:[从供应商c中选择名称、id])
添加(新选择选项(vend.id,vend.name));
返回我的供应商列表;
}
私人设置;
}

我遇到的问题是,picklist中的值始终是列表中的第一个选项,而不是我试图动态设置它的值。我希望在保存时它将绑定到“{!I.selected\u vendor\u c}”,但我无法将其设置为默认值。

我自己解决了这个问题。问题是i.selected\u vendor\u c的值需要是对应于供应商列表的id,而不是名称。

我自己解决了这个问题。问题是i.selected\u vendor\u c的值需要是对应于供应商列表的id,而不是名称

           public List<selectOption> VendorList {get {
    List<selectOption> myVendorList = new List<selectOption>();
    for (Vendor__c vend : [select Name,id from Vendor__c])
        myVendorList.add(new selectOption(vend.id, vend.name));
    return myVendorList;
    }
    private set;
}