Is it possible to write reusable `ng-template`? A lot of my components use exactly the same `ng-template`.  

For example:

```
<kendo-grid>
    <kendo-grid-column field="group">
        <ng-template kendoGridEditTemplate let-dataItem="dataItem" let-formGroup="form">
            <kendo-dropdownlist #listGroups [data]="groups"
                                textField="title"
                                valueField="id"
                                [valuePrimitive]="true"
                                [filterable]="true"
                                [formControl]="form.get('groupId')">
            </kendo-dropdownlist>
        </ng-template>
    </kendo-grid-column>
</kendo-grid>

```

I do not want to repeat this template and logic behind in all my components. I could write custom component and shrink this code to:

```
<kendo-grid>
    <kendo-grid-column field="group">
        <ng-template kendoGridEditTemplate let-dataItem="dataItem" let-formGroup="form">
            <my-custom-component [formControl]="form.get('groupId')">
            </my-custom-component>
        </ng-template>
    </kendo-grid-column>
</kendo-grid>

```

but I want to do more:

```
<kendo-grid>
    <kendo-grid-column field="group">
        <ng-template [ngTemplateOutlet]="templateFromAnotherSource">
        </ng-template>
    </kendo-grid-column>
</kendo-grid>

```

I found [this thread](https://stackoverflow.com/questions/38550255/switch-html-templates-dynamically-during-runtime-on-user-action-in-angular-2) and [this](https://stackoverflow.com/questions/38550255/switch-html-templates-dynamically-during-runtime-on-user-action-in-angular-2?noredirect=1&lq=1) which describes `ngTemplateOutlet`, but not how to share templates between multiple components.