function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Prasanthi BPrasanthi B 

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.

 

 

 

bob_buzzardbob_buzzard

You need to post the getResults code - i.e. the code that populates the list of wrapper classes made available to the pageblocktable.

Prasanthi BPrasanthi B

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

bob_buzzardbob_buzzard

So results isn't a list of wrapper classes, its a list of users:

 

  results = [select Name,Region__c,Email,LanguageLocaleKey,Manager__c from User Where Region__c =:u.Region__c];
      system.debug('USERSLISTFOR REGION$$$$'+results);

 

You'd need to iterate the list of users and create a new instance of the wrapper class for each user object.

 

 

 

 

Vishal GuptaVishal Gupta

http://wiki.developerforce.com/page/Wrapper_Class

i hope this will solve your problem.