
p.location-badge.
  exported from <a href='../core'>angular2/core</a>
  defined in <a href="https://github.com/angular/angular/tree/2.0.0-alpha.37/modules/angular2/src/core/forms/form_builder.ts#L4-L122">angular2/src/core/forms/form_builder.ts (line 4)</a>

:markdown
  Creates a form object from a user-specified configuration.
  
  # Example
  
  ```
  import {Component, View, bootstrap} from 'angular2/angular2';
  import {FormBuilder, Validators, FORM_DIRECTIVES, ControlGroup} from 'angular2/core';
  
  @Component({
    selector: 'login-comp',
    viewBindings: [FormBuilder]
  })
  @View({
    template: `
      <form [control-group]="loginForm">
        Login <input control="login">
  
        <div control-group="passwordRetry">
          Password <input type="password" control="password">
          Confirm password <input type="password" control="passwordConfirmation">
        </div>
      </form>
    `,
    directives: [FORM_DIRECTIVES]
  })
  class LoginComp {
    loginForm: ControlGroup;
  
    constructor(builder: FormBuilder) {
      this.loginForm = builder.group({
        login: ["", Validators.required],
  
        passwordRetry: builder.group({
          password: ["", Validators.required],
          passwordConfirmation: ["", Validators.required]
        })
      });
    }
  }
  
  bootstrap(LoginComp);
  ```
  
  This example creates a <a href='ControlGroup-class.html'><code>ControlGroup</code></a> that consists of a `login` <a href='Control-class.html'><code>Control</code></a>, and a
  nested <a href='ControlGroup-class.html'><code>ControlGroup</code></a> that defines a `password` and a `passwordConfirmation`
  <a href='Control-class.html'><code>Control</code></a>:
  
  ```
   var loginForm = builder.group({
     login: ["", Validators.required],
  
     passwordRetry: builder.group({
       password: ["", Validators.required],
       passwordConfirmation: ["", Validators.required]
     })
   });
  
   ```
  
  

.l-main-section
  h2 Annotations
  .l-sub-section
    h3.annotation Injectable
    pre.prettyprint
      code.
        @Injectable()


.l-main-section
  h2 Members
  .l-sub-section
    h3#group group

    
    pre.prettyprint
      code.
        group(controlsConfig: StringMap&lt;string, any&gt;, extra?: StringMap&lt;string, any&gt;)
    
    :markdown





  .l-sub-section
    h3#control control

    
    pre.prettyprint
      code.
        control(value: Object, validator?: Function)
    
    :markdown





  .l-sub-section
    h3#array array

    
    pre.prettyprint
      code.
        array(controlsConfig: any[], validator?: Function)
    
    :markdown




