Vous pouvez définir le TemplateColumn pour votre DataGrid et définir son CellTemplate comme ci-dessous:
<DataGrid>
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ContentControl x:Name="ContentPlaceholder">
<ContentControl.Style>
<Style TargetType="{x:Type ContentControl}">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<ComboBox />
</DataTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding COLUMNTWOPROPERTY}" Value="0">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<TextBox Text="{Binding PROPERTYFORTEXTBOX}"/>
</DataTemplate>
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</ContentControl.Style>
</ContentControl>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
Ici COLUMNTWOPROPERTY est la valeur qui détermine si la cellule doit montrer ou zone de texte combobox.
Merci
Qu'avez-vous essayé? Avez-vous du code que vous pouvez nous montrer? Il y a plusieurs façons de le faire. Vous pouvez, par exemple, lier le contenu de la colonne 2 au contenu de la colonne 1 et disposer d'un convertisseur pour décider de la colonne de contrôle 2. – PoweredByOrange
Eh bien, je n'ai encore rien essayé et je cherchais des conseils sur la façon de faire quelque chose comme ça. Jusqu'à présent, je n'avais rien trouvé alors peut-être que je ne cherchais pas les mots clés corrects. –