Höhe von GridRow mit Label mit TextWrap (AccessText) wird nicht automatisch angepasst

gk71

Grünschnabel
Hallo Leute,
Eine software soll automatisch Oberflächen generieren (was sie auch erfolgreich macht). An einer Stelle wird ein Label erzeugt, und in ein Grid eingesetzt. Allerdings beinhaltet dieses Label mitunter sehr langen Text, der dann umgebrochen werden muss. Das ist quasi einfach zu leisten mit AccessText. Allerdings, jetzt passt das Label nicht mehr in die GridRow, da diese nur die Höhe eines einzeiligen Labels annimmt.
Die GridRow ist auf Height="Auto" gestellt. Versuche die Höhe des Labels an die Höhe des AccessText zu binden brachten nichts.
Hat jemand ne Idee ob ich hier was grundlegendes übersehe; oder besser noch, eine Lösung? :rolleyes:

Ach ja, es muss ein Label bleiben .. bzw. es ist schlicht weg ein Label, weil es so generiert wird. Ich würde nur sehr ungern in den Generierungsprozess eingreifen müssen ...

hier noch ein bisschen Code:

Code:
                    <Grid.RowDefinitions>
                        <RowDefinition Height="8.0" />
                        <RowDefinition Height="Auto" />
                        .
                        .
                        .
                        <RowDefinition Height="8.0" />
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="8.0" />
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="*" />
                    </Grid.RowDefinitions>
                        .
                        .
                        <Label Style="{DynamicResource greyLabel}" x:Name="Label132" Grid.Column="1" Grid.ColumnSpan="13" Grid.Row="27" Margin="0"  >
                            <AccessText TextWrapping="Wrap">O nobis, for nam per Stupendum commemoro Annuo ars quies Polliceor simul temperantia. An colonus Fructus initium labo postulator infeste en ne nitesco discidium, nam sto vis Alica se nutus Vallo Sollertia solum. Ago inhaeresco at vis socer attollo Elatus.</AccessText>
                        </Label>
                        .
                        .

vielen Dank schon mal für die Mühen

Grüße

Stefan
 
Wenn die RowDefinition auf Auto steht, dann passt sie sich automatisch an die Größe des Inhaltes an. Das gilt auch für dein Label.

Vermutlich liegt das Problem in dem von dir definierten Style greyLabel der hier eventuell eine Größenbeschränkung definiert.

Zudem stellt sich auch die Frage ob du den verwendeten Style auch als dynamische Ressource einbinden musst? Bedeutet dies doch Ressourcenverschwendung, wenn nicht notwendig.
 
Danke für die prompte Antwort.

:-( uuuups ... oh man wie kann man nur so blind sein .. das ist ja super peinlich ... genau, das ists. Tja, das ganze läuft halt total automatisch, auch die Styleerzeugung. Da habe ich vergessen ein Workaround raus zu nehmen ...
Aber danke für den kleinen Stups in die richtige Richtung. Manchmal wird man echt Codeblind ...

Ach so, die Anmerkung mit den dynamischen Styles ist ganz richtig. Das wird sich auch noch ändern, da die Zuordnung von dynamischen Styles bei benutzerdefinierten Komponenten anscheinend sowieso (oder zumindest zum damaligen Stand) nicht funktioniert. Und auch nicht wirklich zur Laufzeit notwendig ist ... wie auch immer, das ist ja aber nur am Rande und nicht Inhalt dieses Threads.
 

Neue Beiträge

Zurück