WPF Рекурсивный вызов Automation Peer API недействителен

Я получаю сообщение об ошибке «Рекурсивный вызов API однорангового узла автоматизации недопустим» при загрузке таблицы данных со столбцом datatemplatecolumn, содержащим столбец combobox. Ошибка попадает в наш код необработанного исключения. Похоже, это проблема на моей машине, и Google не предоставил никаких указаний по ее устранению. Проблема возникает только тогда, когда я заполняю поля со списком данными. Заполнение полей со списком (если я не загружаю данные) работает правильно, и пока отображается ошибка, я могу видеть данные, правильно извлеченные в фоновом режиме.

Я использую таблицу данных WPF, в которой я использую DataGridTemplateColumn для добавления поля со списком внутри сетки. У меня есть раскрывающийся список, привязанный к перечислению с помощью объекта-провайдера. В коде позади при инициализации моего экрана я использую оператор Linq2Sql для извлечения данных и заполнения Itemssource сетки.

<grid:DataGrid.Resources>
 <ObjectDataProvider
  x:Key="ChangeTypeData"
  MethodName="GetValues"
  ObjectType="{x:Type System:Enum}">
  <ObjectDataProvider.MethodParameters>
   <x:Type TypeName="namespace:ChangeType" />
  </ObjectDataProvider.MethodParameters>
 </ObjectDataProvider>     
    </grid:DataGrid.Resources>

 <grid:DataGrid.Columns>
 <grid:DataGridTextColumn Binding="{Binding DatapointName}" Header="Datapoint Changed" IsReadOnly="True" Width="Auto" />
 <grid:DataGridTemplateColumn Header="Change Type">
  <grid:DataGridTemplateColumn.CellTemplate>
   <DataTemplate>
    <ComboBox
     Text="{Binding Path=ChangeTypeName}"
     ItemsSource="{Binding Source={StaticResource ChangeTypeData}}"
     Name="dgcboChangeType"
SelectionChanged="dgcboChangeType_SelectionChanged"/>
   </DataTemplate>
  </grid:DataGridTemplateColumn.CellTemplate>

Приветствуются любые рекомендации по решению этой проблемы.

20
задан Ryan 25 October 2010 в 18:49
поделиться