title: Open auto complete on click on button
body: <p>I am using ofer's autocomplete in Angular2 app</p>
  
  <p><a href="https://github.com/oferh/ng2-completer" rel="nofollow noreferrer">https://github.com/oferh/ng2-completer</a></p>
  
  <p>I want a behavior where the auto complete does not open automatically upon typing but I need to press a button and only then should the autocomplete make a server request and show the dropdown I tried to implement CompleterData:</p>
  
  <pre><code>import { Http, Response } from "@angular/http";
  import { Subject } from "rxjs/Subject";
  import { HttpClient } from './shared';
  import { CompleterData, CompleterItem } from 'ng2-completer';
  
  export class AddressData extends Subject&lt;CompleterItem[]&gt; implements CompleterData {
      private url: string;
  
      constructor(private http: HttpClient, public erpIDParent: number, url: string) {
          super();
          this.url = url;
      }
  
      public setErpIDParent(erpIDParent: number) {
          this.erpIDParent = erpIDParent;
      }
  
      public search(term: string): void {
          console.log('searching');
          if (this.erpIDParent &gt; 0) {
              this.http.get(`${this.url}${term}&amp;erpIDParent=${this.erpIDParent}`)
                  .map((res: Response) =&gt; {
                      // Convert the result to CompleterItem[]
                      let data = res.json();
                      let matches: CompleterItem[] = data.map((address: any) =&gt; {
                          return {
                              originalObject: address,
                              title: address.Name
                          }
                      });
                      console.log(matches);
                      this.next(matches);
                  })
                  .subscribe();
          }
      }
  
      public cancel() {
          // Handle cancel
      }
  }
  </code></pre>
  
  <p>and kept the minSearchLength to 1000</p>
  
  <pre><code>&lt;ng2-completer placeholder="{{ 'NewOrder.typeToSearch' | translate }}" formControlName="address" [(ngModel)]="address" [datasource]="addressDataService" (selected)="addressSelected($event)" [minSearchLength]="1000"&gt;&lt;/ng2-completer&gt;
  </code></pre>
  
  <p>so it wouldn't send the server request then on my button click I have this code:</p>
  
  <pre><code>searchAddresses() {
          this.addressDataService.search(this.address);
      }
  </code></pre>
  
  <p>so it would start the search manually but it doesn't seem to work the way I want to. The dropdown shows and hides instantly. Is there any way to fix this?</p>