2015-01-20 1 views
0

Как установить DependencyProperty на инициализацию элемента?Установить DependencyProperty при инициализации элемента?

new DataGrid() { FocusManager.SetIsFocusScope(DataGrid_Obj,true)}; 

Это дает мне следующее сообщение об ошибке:

enter image description here

Если я пишу так:

DataGrid DataGrid_Obj = new DataGrid() { FocusManager.SetIsFocusScope(DataGrid_Obj,true)}; 

Тогда он дает мне:

enter image description here

ответ

1

Как вы можете прочитать here, вы можете просто выполнять присваивания свойствам или полям в инициализаторе. Такие команды, как ваш FocusManager.SetIsFocusScope(DataGrid_Obj,true), должны быть вызваны после создания и инициализации вашего объекта.

Кроме того, вы не можете использовать DataGrid_Obj в своем собственном инициализаторе вообще, потому что он создан не до того, как будет выполнен конструктор (конечно). Так будет null.

Просто напишите

DataGrid DataGrid_Obj = new DataGrid(); 
FocusManager.SetIsFocusScope(DataGrid_Obj,true); 

Так что я думаю, что он должен работать. (Я не пробовал.)