Hi Umair,
Greetings from Syncfusion support.
We have created a sample based on your requirement by using the editorTemplate of Scheduler. You can add EJ2-DropDownList to editorTemplate and bind change event to it like the below code and the same made in the below sample.
[app.component.html]
<ejs-schedule #scheduleObj width='100%' height='550px' [selectedDate]="selectedDate" [eventSettings]="eventSettings"
(actionBegin)="onActionBegin($event)" (eventRendered)="onEventRendered($event)" [showQuickInfo]="showQuickInfo">
<e-views>
<e-view option="Day"></e-view>
<e-view option="Week"></e-view>
<e-view option="WorkWeek"></e-view>
<e-view option="Month"></e-view>
</e-views>
<!-- Editor template start -->
<ng-template #editorTemplate let-data>
<table *ngIf="data != undefined" class="custom-event-editor" width="100%" cellpadding="5">
<tbody>
<tr>
<td class="e-textlabel">Summary</td>
<td colspan="4">
<input id="Subject" class="e-field e-input" type="text" value="{{data.Subject}}" name="Subject" style="width: 100%" /> </td>
</tr>
<tr>
<td class="e-textlabel">Status</td>
<td colspan="4">
<ejs-dropdownlist id='Status' class="e-field" data-name="Status" placeholder='Choose Status'
[dataSource]='StatusData' [fields]='statusFields' value='{{data.Status}}'>
</ejs-dropdownlist>
</td>
</tr>
<tr>
<td class="e-textlabel">Event Type</td>
<td colspan="4">
<ejs-dropdownlist #eventType id='EventType' class="e-field" data-name="EventType" placeholder='Choose Event Type'
[dataSource]='EventTypeData' [fields]='eventTypeFields' (change)="onChange($event)" value='{{data.EventType}}'>
</ejs-dropdownlist>
</td>
</tr>
<tr>
<td class="e-textlabel">From</td>
<td colspan="4">
<ejs-datetimepicker id="StartTime" class="e-field" data-name="StartTime"
format="M/dd/yy h:mm a" [value]="dateParser(data.startTime || data.StartTime)">
</ejs-datetimepicker>
</td>
</tr>
<tr>
<td class="e-textlabel">To</td>
<td colspan="4">
<ejs-datetimepicker id="EndTime" class="e-field" data-name="EndTime" format="M/dd/yy h:mm a"
[value]='dateParser(data.endTime || data.EndTime)'></ejs-datetimepicker>
</td>
</tr>
<tr>
<td class="e-textlabel">Reason</td>
<td colspan="4">
<textarea id="Description" class="e-field e-input" name="Description" rows="3" cols="50" value="{{data.Description}}" style="width: 100%; height: 60px !important; resize: vertical"></textarea>
</td>
</tr>
</tbody>
</table>
</ng-template>
<!-- End of Editor template -->
</ejs-schedule>
[app.component.ts]
// Setting up fields to custom dropdown
public eventTypeFields: Object = { text: 'EventTypeText', value: 'EventTypeValue' };
// Datasource definition for custom dropdown
public EventTypeData: Object[] = [
{ EventTypeText: 'Check up', EventTypeValue: 'check-up' },
{ EventTypeText: 'Consulting', EventTypeValue: 'consulting' },
{ EventTypeText: 'Operation', EventTypeValue: 'operation' }
];
// Change event definition for custom dropdown
public onChange(args: ChangeEventArgs) {
if (!isNullOrUndefined(args.value))
alert("Event type: " + args.value);
}
Kindly try the above sample and get in touch with us If you would require any further assistance.
Regards,
Ravikumar Venkatesan