사용자 지정 컨트롤이 포함 된 Silverlight 컨트롤에 DataGrid가 있습니다. 이러한 사용자 지정 컨트롤은 그리드 외부에서도 사용되며 완벽하게 작동합니다. 그러나 그리드 내에서 사용되는 경우 포커스가 없어지면 (즉, 다른 셀로 이동 한 경우) 자체 재설정됩니다.포커스 손실시 DataGrid 내의 Silverlight 컨트롤이 다시로드됩니다.
내 사용자 지정 컨트롤이 아닌지 테스트하기 위해 자동 완성 상자가 포함 된 열을 추가했습니다. 상자에 입력하고 다음 열로 이동하면 상자가 지워집니다.
디버깅 할 때로드 된 컨트롤이 포커스를 잃은 후에 호출되는 것을 볼 수 있습니다.이 이벤트는 다음 필드로 이동할 때 다시로드되거나 다시 생성된다는 것을 확인합니다. 그것은 단순히 어떤 이유로 그리드를 변경하지 않는 것입니까?
XAML (여기 이상한 아주 기본적인, 아무것도)의
<sdk:DataGridTemplateColumn Header="Description">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<sdk:AutoCompleteBox Name="Description" Width="100" />
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
물론 아! 고마워, 내가 XAML을 한 이후로 한참 동안. –