Вы не можете получить доступ к элементам напрямую по имени, но вы можете получить к нему доступ, сначала найдя входные теги и индексируя результат, чтобы найти теги по имени.
webBrowser1.Document.GetElementsByTagName("input")["textfield2"]
или
webBrowser1.Document
.GetElementsByTagName("input")
.GetElementsByName("textfield2")[0]
Я думаю, что происходит: вы получаете школьную информацию о «schoolObject». Но то, что вы связываете свои значения в html-файле, это свойства объекта 'school'. А в текущей версии вашего ts-файла я вижу, что школьный объект устанавливается только один раз в ngOnInit (без учета инициализации).
Я думаю, вам нужно устанавливать школьный объект каждый раз, когда школьный объект получает новый вход. Тогда все будет нормально. Вот что вы можете сделать:
schoolObject: School;
@Input()
set SchoolObject(schoolObj){
this.schoolObject = schoolObj;
this.school = schoolObj;
}
Вам нужно будет обновить html, чтобы получить значения с использованием SchoolObject для вашего родителя следующим образом:
<app-list-item-view *ngIf="showViewScreen" [SchoolObject]="selectedSchool" (notifyParentOnUpdate)='onViewItem($event)'></app-list-item-view>
Когда вы пишете дочерний компонент в Angular 7, он обновляет его содержимое при каждом изменении ввода. Таким образом, вы можете добавить все необходимые вычисления в ловушку жизненного цикла ngOnChanges
. ngOnInit
вызывается только один раз.
Пожалуйста, добавьте следующий код в list.item-view.component.ts
ngOnChanges() {
this.school = this.schoolObject;
}
Удачи!