You need to sign in to do that
Don't have an account?

Wrapperclass property in visualforce page
Hi,
I am not able to use the wrapperclass selected property in my visal force checkbox button.
Error: Invalid field selected for SObject User
<apex:pageBlockTable value="{!results}" var="t" id="theTable"> <apex:column > <apex:inputCheckbox value="{!t.selected}"/> </apex:column>
public class UserWrapper { public User wuser { get; set; } public boolean selected { get; set; } public UserWrapper(User u) { wuser = u; selected = false; } }
Please suggest.
Thnaks.
You need to post the getResults code - i.e. the code that populates the list of wrapper classes made available to the pageblocktable.
public Pagereference doSearch()
{
User u =(User)stdCtrl.getrecord();
results = [select Name,Region__c,Email,LanguageLocaleKey,Manager__c from User Where Region__c =:u.Region__c];
system.debug('USERSLISTFOR REGION$$$$'+results);
step=1;
return null;
}
public List<Userwrapper> XXX()
{
if(userList == null) {
userList = new List<Userwrapper>();
for(User u:results)
{
userList.add(new Userwrapper(u));
}
system.debug('****ADDEDUSERS****'+userlist);
}
return userList;
}
Public PageReference getSelected()
{
XXX();
system.debug('RETURNED$$$$$'+userList);
system.debug('ENTERED INTO SELECTED');
List<User> selectedUsers = new List<User>();
for(userwrapper usrwrapper :XXX())
{
system.debug('$$$$$5555$$$$'+usrwrapper.selected );
if(usrwrapper.selected == true)
{
selectedusers.add(usrwrapper.wuser);
}
}
system.debug('@@@SELECTEDUSERs@@@:'+selectedusers);
return null;
}
So results isn't a list of wrapper classes, its a list of users:
You'd need to iterate the list of users and create a new instance of the wrapper class for each user object.
http://wiki.developerforce.com/page/Wrapper_Class
i hope this will solve your problem.