Recibo un mensaje de error "Recursive call to Automation Peer API is not valid" al cargar una cuadrícula de datos con una columna de columna de datos que contiene una columna de combobox. El error termina atrapado en nuestro código de excepción no controlada. Esto parece ser un problema en mi máquina, y Google no ha proporcionado ninguna fuente de orientación para resolver el problema. El problema parece ocurrir solo cuando estoy poblando los cuadros combinados con datos. Llenar los cuadros combinados (si no cargué datos) funciona correctamente, y mientras se muestra el error, puedo ver los datos recuperados correctamente en el fondo.WPF Llamada recursiva a Automation Peer API no es válida
Estoy usando una cuadrícula de datos WPF donde estoy usando una DataGridTemplateColumn para agregar un combobox dentro de la grilla. Tengo la lista desplegable vinculada a una enumeración utilizando un proveedor de datos de objeto. En el código que se encuentra detrás de la inicialización de mi pantalla, uso una instrucción Linq2Sql para recuperar datos y completar la fuente Items de la grilla.
<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>
Cualquier y toda la orientación en la solución de este problema es apreciado.
Me encontré con el mismo problema y el problema desapareció cuando configuré la altura del DataGrid. –