DataGrid Header Binding

  • WPF

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von EugenIS.

    Hallo VB1963. Mit dem Header Text hab ich bereits gefunden. Das sieht so aus:

    XML-Quellcode

    1. <DataGridTextColumn Binding="{Binding Nettobetrag, StringFormat={}{0:N2}}" IsReadOnly="True" ElementStyle="{StaticResource RightCell}"
    2. Visibility="{Binding wmVisibility, RelativeSource={RelativeSource AncestorType={x:Type Visibility}}}">
    3. <DataGridTextColumn.HeaderTemplate>
    4. <DataTemplate>
    5. <TextBlock Text="{Binding Path=DataContext.wmListOf_tProjektbewertung.ListOfHeader.HeaderSummeAuftrag.DataContextClass.Header, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
    6. </DataTemplate>
    7. </DataGridTextColumn.HeaderTemplate>
    8. </DataGridTextColumn>


    Was nicht klappt ist mit der Sichtbarkeit. Irgend wie will er es nicht schlucken. Das muss an Column selbst gebunden werden, und er erzählt mir was von Item is NULL... Ich vermute, dass er davon ausgeht, dass in jedem Grid-Item die Variable drin steht. Ich will aber, dass er in der Liste unter entsprechenden Header sucht...
    Wenn du das Sichtbarmachen einer DatagridColumn meinst kann ich dir folgenden Verweis anbieten, wo dieses Vorhaben schön detailliert und in kleinen Schritten gezeigt wird:

    Beachte folgende Kernaussage aus dieser Beschreibung:
    Bemerkenswertes Zitat: „Zunächst einmal liegt DataGridTextColumn oder eine andere unterstützte dataGrid-Spalte nicht im visuellen Baum von DataGrid. Daher erbt es standardmäßig keinen DataContext von DataGrid. Es funktioniert jedoch nur für das Binden von DP und nicht für andere DPs in DataGridColumn.“

    https://www.technical-recipes.com/2017/binding-the-visibility-of-datagridcolumn-in-wpf-mvvm/
    Ursprung: stackoverflow.com/questions/22…-in-wpf/22074985#22074985