Quantcast
Channel: Active questions tagged listview - Stack Overflow
Viewing all articles
Browse latest Browse all 618

MAUI: UI alignment issue in Listview with Grid having 3 columns

$
0
0

I have a UI alignment issue in Listview with Grid having 3 columns like the below screenshot:

enter image description here

My ListView Code:

<ListView     x:Name="MyCustomers"    ItemsSource="{Binding AllItems,Mode=TwoWay}"    RowHeight="{OnIdiom Phone=80, Tablet=110, Desktop=80}"    IsPullToRefreshEnabled="True"    HasUnevenRows="True"    CachingStrategy="RecycleElement"         RefreshCommand="{Binding RefreshCommand}"    IsRefreshing="{Binding IsRefreshing}"><ListView.ItemTemplate><DataTemplate><ViewCell><ViewCell.View><Grid                         HorizontalOptions="FillAndExpand"                        VerticalOptions="CenterAndExpand"><Grid.ColumnDefinitions><ColumnDefinition Width="2*" /><ColumnDefinition Width="6*" /><ColumnDefinition Width="2*" /></Grid.ColumnDefinitions><Grid Grid.Column="0"                              HorizontalOptions="Start"><Grid.ColumnDefinitions><ColumnDefinition Width="*" /><ColumnDefinition Width="12.25*" /></Grid.ColumnDefinitions><Grid                                 VerticalOptions="CenterAndExpand"                                HorizontalOptions="Start"                                Grid.Column="1"><Image                                     Source="ic_profilebg_xx.png"                                    VerticalOptions="CenterAndExpand"                                    HorizontalOptions="Start"                                    x:Name="imagebg"                                    Aspect="AspectFit"><Image.HeightRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>60</OnIdiom.Phone><OnIdiom.Tablet>90</OnIdiom.Tablet><OnIdiom.Desktop>60</OnIdiom.Desktop></OnIdiom></Image.HeightRequest><Image.WidthRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>60</OnIdiom.Phone><OnIdiom.Tablet>90</OnIdiom.Tablet><OnIdiom.Desktop>60</OnIdiom.Desktop></OnIdiom></Image.WidthRequest></Image><Label                                     Text="{Binding user.fullname,Converter={StaticResource profilenameConverter}}"                                    Style="{StaticResource InitalLabelStyle}"/></Grid></Grid><StackLayout                            Grid.Column="1"                            Margin="3,0,0,0"                            HorizontalOptions="Start"                            VerticalOptions="CenterAndExpand"                            Orientation="Vertical"><Label                                 Text="{Binding user.fullname, Converter={StaticResource nameConverter}}"                                FontFamily="Bold"                                 VerticalTextAlignment="Center"                                VerticalOptions="CenterAndExpand"                                HorizontalOptions="Start"                                HorizontalTextAlignment="Start"                                TextColor="#676767"                                IsVisible="{Binding user.fullname,  Converter={StaticResource nullCheckConverter}}"><Label.FontSize><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>15</OnIdiom.Phone><OnIdiom.Tablet>20</OnIdiom.Tablet><OnIdiom.Desktop>15</OnIdiom.Desktop></OnIdiom></Label.FontSize></Label><Label                                 Text="{Binding user.email}"                                VerticalOptions="CenterAndExpand"                                TextColor="#676767"                                VerticalTextAlignment="Center"                                 HorizontalOptions="Start"                                HorizontalTextAlignment="Start"                                IsVisible="{Binding user.email ,  Converter={StaticResource nullCheckConverter}}"><Label.FontSize><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>12</OnIdiom.Phone><OnIdiom.Tablet>18</OnIdiom.Tablet><OnIdiom.Desktop>12</OnIdiom.Desktop></OnIdiom></Label.FontSize></Label><Label                                 Text="{Binding phoneNumber, Converter={StaticResource phoneNumberFormatConverter}}"                                VerticalTextAlignment="Center"                                VerticalOptions="CenterAndExpand"                                 HorizontalOptions="Start"                                HorizontalTextAlignment="Start"                                TextColor="#676767"                                IsVisible="{Binding isPhoneEmpty}"><Label.FontSize><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>12</OnIdiom.Phone><OnIdiom.Tablet>18</OnIdiom.Tablet><OnIdiom.Desktop>12</OnIdiom.Desktop></OnIdiom></Label.FontSize></Label><!--<StackLayout.WidthRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>200</OnIdiom.Phone><OnIdiom.Tablet>300</OnIdiom.Tablet><OnIdiom.Desktop>200</OnIdiom.Desktop></OnIdiom></StackLayout.WidthRequest>--></StackLayout><StackLayout                             Grid.Column="2"                            Orientation="Vertical"                            VerticalOptions="CenterAndExpand"                            HorizontalOptions="EndAndExpand"><StackLayout                                 Margin="0,0,0,5"                                HorizontalOptions="FillAndExpand"                                BackgroundColor="#5abcd7"><Label                                     Text="{Binding pointsToVisualize}"                                    FontFamily="Bold"                                     HorizontalOptions="CenterAndExpand"                                    HorizontalTextAlignment="Center"                                    TextColor="White"><Label.FontSize><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>15</OnIdiom.Phone><OnIdiom.Tablet>20</OnIdiom.Tablet><OnIdiom.Desktop>15</OnIdiom.Desktop></OnIdiom></Label.FontSize></Label><!--<StackLayout.WidthRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>80</OnIdiom.Phone><OnIdiom.Tablet>120</OnIdiom.Tablet><OnIdiom.Desktop>80</OnIdiom.Desktop></OnIdiom></StackLayout.WidthRequest>--><StackLayout.Padding><OnIdiom x:TypeArguments="Thickness"><OnIdiom.Phone>3</OnIdiom.Phone><OnIdiom.Tablet>6</OnIdiom.Tablet><OnIdiom.Desktop>3</OnIdiom.Desktop></OnIdiom></StackLayout.Padding></StackLayout><StackLayout                                Orientation="Horizontal"><Image                                    VerticalOptions="Center"                                    Source="ic_action_time.png"><Image.WidthRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>13</OnIdiom.Phone><OnIdiom.Tablet>20</OnIdiom.Tablet><OnIdiom.Desktop>13</OnIdiom.Desktop></OnIdiom></Image.WidthRequest><Image.HeightRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>13</OnIdiom.Phone><OnIdiom.Tablet>20</OnIdiom.Tablet><OnIdiom.Desktop>13</OnIdiom.Desktop></OnIdiom></Image.HeightRequest></Image><Label                                     Margin="2,0,0,0"                                    Text="{Binding user.updatedTime,  Converter={StaticResource cnvDateTimeConverter}}"                                    TextColor="#5abcd7"                                    HorizontalOptions="FillAndExpand"                                     VerticalOptions="Center"><Label.FontSize><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>10</OnIdiom.Phone><OnIdiom.Tablet>15</OnIdiom.Tablet><OnIdiom.Desktop>10</OnIdiom.Desktop></OnIdiom></Label.FontSize></Label><StackLayout.Margin><OnIdiom x:TypeArguments="Thickness"><OnIdiom.Phone>3</OnIdiom.Phone><OnIdiom.Tablet>6</OnIdiom.Tablet><OnIdiom.Desktop>3</OnIdiom.Desktop></OnIdiom></StackLayout.Margin><!--<StackLayout.WidthRequest><OnIdiom x:TypeArguments="x:Double"><OnIdiom.Phone>115</OnIdiom.Phone><OnIdiom.Tablet>300</OnIdiom.Tablet><OnIdiom.Desktop>50</OnIdiom.Desktop></OnIdiom></StackLayout.WidthRequest>--></StackLayout></StackLayout><Grid.Margin><OnIdiom x:TypeArguments="Thickness"><OnIdiom.Phone>3</OnIdiom.Phone><OnIdiom.Tablet>6</OnIdiom.Tablet><OnIdiom.Desktop>3</OnIdiom.Desktop></OnIdiom></Grid.Margin><Grid.Padding><OnIdiom x:TypeArguments="Thickness"><OnIdiom.Phone>3</OnIdiom.Phone><OnIdiom.Tablet>6</OnIdiom.Tablet><OnIdiom.Desktop>3</OnIdiom.Desktop></OnIdiom></Grid.Padding></Grid></ViewCell.View></ViewCell></DataTemplate></ListView.ItemTemplate><ListView.Footer><Label/></ListView.Footer></ListView>

I tried to recreate this issue on a demo project and in the demo it is working fine. The demo project is uploaded here.

With the same codes the UI has no issue in demo project and has issues in my real project, what may be the possible reason?

Note: If I uncomment the StackLayout.WidthRequest for the second column the UI alignment issue is getting resolved.


Viewing all articles
Browse latest Browse all 618

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>