Comment faire pour changer la façon dont les données sont affichées dans WPF GridControl?

Je suis en train d'utiliser GridControl de DevExpress, mais je ne peux pas faire la même chose j'ai l'habitude de faire dans ListView avec un GridView View.

Je n'ai à la fois l'approche. À l'aide de DisplayMemberBinding et CellTemplate. Les deux ne montrent rien. Le Code ci-dessous (j'ai enlevé certaines colonnes):

<dxg:GridControl ItemsSource="{Binding}" Name="gridControl1">
    <dxg:GridControl.Columns>
        <dxg:GridColumn Header="Teste" DisplayMemberBinding="{Binding DataNascimento}"/>
        <dxg:GridColumn Header="Nome">
            <dxg:GridColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding Nome}"/>
                </DataTemplate>
            </dxg:GridColumn.CellTemplate>
        </dxg:GridColumn>
    </dxg:GridControl.Columns>
    <dxg:GridControl.View>
        <dxg:TableView Name="tableView1" AutoWidth="True" />
    </dxg:GridControl.View>
</dxg:GridControl>

Il est montré comme cette image:

Comment faire pour changer la façon dont les données sont affichées dans WPF GridControl?

Vous pouvez voir mes colonnes mais pas de données. J'ai tenu 3 éléments et il affiche 3 lignes. Les données lui-même est lié mais il semble que le modèle n'a pas été montrée.

J'ai essayé la même approche de cette question mais ne fonctionne pas pour moi.
Les élèves de ma classe ont INotifyPropertyChanged et j'ai utilisé un ObservableCollection<T> avant bindind à la GridControl.
La seule façon dont cela fonctionne est, si je retire presque tous les code et de modifier le AutoPopulateColumns à True. Mais dans certains cas, je veux un format personnalisé et ne peut pas atteindre avec cette option.

Edit1:
Je l'ai fait en mode de Conception et de travaux:

            <dxg:GridColumn FieldName="DataNascimento" Name="gridColumn3">
                <dxg:GridColumn.EditSettings>
                    <dxe:TextEditSettings DisplayFormat="{}{0:dd/MM/yyyy HH:mm:ss}" />
                </dxg:GridColumn.EditSettings>
            </dxg:GridColumn>

Edit2:
Tenté la même approche @blindmeis suggère avec grille et il fonctionne comme je l'spected:

<DataGrid AutoGenerateColumns="False" Grid.Row="2" ItemsSource="{Binding}">
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding DataNascimento}" Header="Nascimento" />
        <DataGridTextColumn Binding="{Binding Nome}" Header="Header" />
        <DataGridTemplateColumn Header="Teste">
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <TextBox Text="{Binding Nome}"/>
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>

On dirait que cette approche fonctionne dans les deux ListView et DataGrid. Malheureusement GridControl se comporte de façon différente.

À l'aide de <dxg:GridColumn.EditSettings> est la bonne façon?

avez-vous essayé votre 1er code intégré dans la grille de données de formulaire .Net4.0? je l'utilise tout le chemin et il fonctionne.
Juste essayé. Je peux utiliser presque la même approche. Je peux utiliser DataGridTemplateColumn et de fournir ce que je veux. Mais j'ai vraiment besoin de beaucoup de fonctionnalités fournies par GridControl. Merci. Viens d'apprendre que DataGrid a DataGridTemplateColumn.

OriginalL'auteur Vitor Canova | 2012-07-02