Почему это так?
Почему изменение "внутри" DataTable
вызовет установщик члена, содержащего DataTable
?
Сеттер будет вызываться только по этой линии
this.DtTest = new DataTable();
по этой линии
this.DtTest.TableName = "Hello World";
не будет вызывать сеттер.
Ваш пример с TextBox
отличается, потому что нет никакого "внутреннего" значения, которое будет изменено.Элемент, который он сам изменяет, нет TextProperty.Value
, который будет установлен, но вместо него будет установлен только TextProperty
.
Вы можете попытаться прослушать подходящее событие DataGrid: DataGridСобытия
Например, CellEndEditing
или RowEndEditing
Или прослушивание подходящего события DataTable: DataTable Events
Например, RowChanged
или ColumnChanged