Mark Form as Dirty (Manually) Without ngModel
To solve this you need to manually set the form as dirty and to do that you can use the markAsDirty() method on the ngForm object like this:
<form #f="ngForm">
<input (change)="myVar = $event.target.value; f.form.markAsDirty();" [value]="myVar" />
<span *ngIf="f.dirty">Form is Dirty!</span>
</form>