myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » GUI: WPF und XAML » Nach dem Vergrössern beim Verkleinern auch die Spaltenbreite wieder kleiner machen?
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Nach dem Vergrössern beim Verkleinern auch die Spaltenbreite wieder kleiner machen?

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
AnnaBauer21 AnnaBauer21 ist weiblich
myCSharp.de-Mitglied

Dabei seit: 27.01.2020
Beiträge: 4


AnnaBauer21 ist offline

Nach dem Vergrössern beim Verkleinern auch die Spaltenbreite wieder kleiner machen?

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo ihr Lieben,

ich habe ein Problem mit dem 'DataGrid' und finde dazu im Internet nichts brauchbares.

Ich hoffe ihr könnt mir helfen smile

Ich habe einen 'Slider' mit dem ich im 'DataGridColumnHeader' die Größe des Textes ändern kann.

Wenn ich den Text größer mache werden die Spalten automatisch vergrößert.
Wenn ich den Text dann wieder kleiner mache bleiben die Spalten aber vergrößert.
Die Spalten werden nicht automatisch wieder kleiner.

Wie kann ich das (am besten im Style, alternativ im Code) zum funktionieren bringen?
Es müsste unabhängig davon funktionieren ob ich die 'Columns' direkt im XAML definiere oder ob diese mit 'AutoGenerateColumns' automatisch erstellt werden.

Vielen Dank schonmal an euch

Liebe Grüße
Anna
26.03.2020 08:58 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.503
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Wie genau änderst du die Größe des Textes? Ich nehme an per FontSize?

Die Spaltenbreite richtet sich jeweils nach dem eingestellten  ColumnWidth bzw. je Spalte  DataGridColumn.Width (Werte siehe  Größenänderungsoptionen im DataGrid-Steuerelement unter "Größenanpassung von Spalten und Spaltenheader").

Wenn du nur die Größe des Headertexts änderst und die Spalten daran ausgerichtet haben möchtest, dann solltest du also SizeToHeader benutzen.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Th69 am 27.03.2020 12:32.

26.03.2020 14:23 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
AnnaBauer21 AnnaBauer21 ist weiblich
myCSharp.de-Mitglied

Dabei seit: 27.01.2020
Beiträge: 4

Themenstarter Thema begonnen von AnnaBauer21

AnnaBauer21 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo,

vielen Dank für die Antwort.

SizeToHeader habe ich bereits versucht aber leider ohne Auswirkung.
Die Spaltenbreite ist zwar initial auf die Breite des Headertextes angepasst, bei Änderung der Textgröße besteht mein beschriebenes Problem aber weiterhin.

Die Textgröße wird durch den Regler live angepasst, die Spalte wird auch live breiter, aber nicht mehr schmäler.

Ein weiteres Problem was ich durch SizeToHeader dann habe ist, dass der Inhalt in den einzelnen Zellen, wenn dieser länger ist als der Header, abgeschnitten ist.

Liebe Grüße
Anna
27.03.2020 12:18 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.503
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Dann eben initial SizeToCells.

Evtl. hilft:

C#-Code:
datagrid.InvalidateArrange();
datagrid.UpdateLayout();

?
27.03.2020 12:42 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum
Antwort erstellen


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 02.04.2020 15:33