Hallo Alle Zusammen
Ich habe eine ListViwe in WPF ertsellt mit vier Spalten, wird aber nun 5 Spalten
angezeigt, wie kann ich die fünfte Spalte ausblenden?
Vielen Dank für die Antworten
<ListView
x:Name="lstNames"
Grid.Row="0"
Grid.Column="1"
Margin="5,5,6,5"
SelectionChanged="lstNames_SelectionChanged"
>
<ListView.View >
<GridView x:Name="grdNames">
<GridViewColumn
Width="100"
DisplayMemberBinding="{Binding Start, StringFormat={}{00:HH:mm:ss}}"
Header="Start" />
<GridViewColumn
Width="100"
DisplayMemberBinding="{Binding Ende, StringFormat={}{00:HH:mm:ss}}"
Header="Ende" />
<GridViewColumn
x:Name="sptDauer"
Width="100"
DisplayMemberBinding="{Binding Dauer, StringFormat={}{0:m\\:ss}}"
Header="Dauer" />
<GridViewColumn
Width="220"
DisplayMemberBinding="{Binding Bemerkung}"
Header="Bemerkung"/>
</GridView>
</ListView.View>
</ListView>
Du hast ja explizit für alle 4 Spalten die Breite gesetzt, d.h. die 5. Spalte ist der Rest (sofern das GridView
breiter ist).
Wenn du die 4. Spalte so groß wie den Rest haben möchtest, dann benutze
<GridViewColumn
Width="*"
DisplayMemberBinding="{Binding Bemerkung}"
Header="Bemerkung"/>
Danke Aber dann Es gibt diese Fehlermeldung aus: > Fehlermeldung:
Die Zeihenfolge "*" kann nicht in "Length"konvertiert werden
Oh, "*"
scheint wohl nicht direkt vom GridView
unterstützt zu werden.
Schau mal in die englischen Artikel
WPF : Extend last column of ListView's GridView
How can I get a ListView GridViewColumn to fill the remaining space in my grid?
Ja stimmt, hab einfach die fünfte tabele Width = "500" gegeben und der Titel links gebunden , als zwischenlösung
Danke aufjedenfall
Hallo
Warum machst du das nicht mit DataGridTextColumn?
<DataGrid x:Name="grdNames">
<DataGrid.Columns>
<DataGridTextColumn
Width="100"
DisplayMemberBinding="{Binding Start, StringFormat={}{00:HH:mm:ss}}"
Header="Start" />
<DataGridTextColumn
Width="100"
DisplayMemberBinding="{Binding Ende, StringFormat={}{00:HH:mm:ss}}"
Header="Ende" />
<DataGridTextColumn
x:Name="sptDauer"
Width="100"
DisplayMemberBinding="{Binding Dauer, StringFormat={}{0:m\\:ss}}"
Header="Dauer" />
<DataGridTextColumn
Width="*"
DisplayMemberBinding="{Binding Bemerkung}"
Header="Bemerkung"/>
</DataGrid.Columns>
</DataGrid>
Habe das jetzt nicht getestet aber so sollte es funktionieren.
Gruß
Mattes