0
votes

Xamarin: Label disparaît à l'intérieur de la liste

Projet est fait pour un appareil Android.

J'ai cherché un moment maintenant et je ne trouve pas de réponse à la raison pour laquelle cela se produit. P>

<ListView x:Name="ScorebdList"
          Grid.Row="0"
          Grid.ColumnSpan="3"
          Grid.RowSpan="4"
          SelectionMode="None"
          Header="HIGHSCORES"
          HasUnevenRows="True">
    <ListView.ItemTemplate>
        <DataTemplate >
            <ViewCell>
                <ViewCell.View>
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                            <Label Text="{Binding Score}" HorizontalTextAlignment="Center" 
                                   BackgroundColor="Red"/>
                    </Grid>
                </ViewCell.View>
            </ViewCell>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>


2 commentaires

Essayez de définir la valeur de hauteur de la grille, pas l'étiquette. Et / ou définir la rangée de la liste


Essayé les deux. La chose est que lorsque je fais que les lignes obtiennent la bonne hauteur, mais que l'étiquette disparaît complètement ... et aucun score n'est montré.


4 Réponses :


0
votes

Votre listview n'a pas de itemsource Reliure


0 commentaires

0
votes

Utilisez un convertisseur pour modifier la hauteur de la ligne de la grille avec la liste ListView Rowheight.

convertisseur: xxx

xaml: xxx

code derrière: xxx


3 commentaires

Merci que ce code fonctionne pour son objectif mais ne résout pas mon problème. Je peux ajuster la hauteur et la largeur de la colonne, mais lorsque je fais que je fais que l'étiquette disparaît.


Pour le code que j'ai fourni, changez la hauteur et la largeur de la colonne, mais l'étiquette existe toujours. Pourriez-vous fournir plus de détails sur la disparition?


Dès que je définirai la hauteur ou la largeur sur les définitions, étiqueter l'étiquette disparaît. Donc, votre code fonctionne, mais ne pas montrer l'étiquette pour moi. Si j'utilise votre code Witouht réglage de la hauteur et de la largeur, l'étiquette montre. Ça me semble manquant quelque chose de simple ici ...



0
votes

de votre code, je vois que vous ne définissez jamais grid.column et grid.row à votre étiquette xxx


4 commentaires

Merci, mais ce n'est pas nécessaire. Mais essayé avec les mêmes résultats.


Du code de votre première image, je suppose que vous devez définir colonneCaCing = "0" et rowspacing = "0" à votre grille


Ouais c'était une bonne idée! Tu m'as vraiment aidé à le résoudre! Pour une raison quelconque, le réglage de l'espacement ne fait rien, étrange. Mais au lieu de cela, j'ai utilisé margin = "- 50" et cela a effectivement travaillé.


Heureux d'avoir entendu ça



0
votes

Ce problème était vraiment étrange, mais merci beaucoup à tous ceux qui m'ont aidé!

à la fin, j'ai utilisé margin = "- 50" pour définir la grille. Toujours étrange que je ne pouvais pas utiliser les demandes de hauteur, l'espacement de la rangée / colonne ... et encore plus.

Mais il est résolu pour l'instant, merci encore!

avec margin = "- 50 0"

 Entrez la description de l'image ici


1 commentaires

Merci d'avoir partagé, n'oubliez pas d'accepter la réponse.