2016-03-21 3 views
0

У меня есть ListView с установленной высотой строки. Это работает на iOS и Android, но не на UWP. Здесь высота строки очень мала. Он имеет размер шрифта по умолчанию TextCell. Я сделал еще один небольшой пример проекта с этим кодом:RowHeight свойство ListView не работает над проектом UWP

Title = "Page"; 
var listView = new ListView 
{ 
    RowHeight = 44, 
}; 
listView.ItemsSource = new string[] 
{ 
    "Test1", 
    "Test2", 
    "Test3", 
    "Test4", 
    "Test5", 
}; 

Content = listView; 

Этот код работает отлично на примере проекта, но не в большом главном проекте.

У вас есть ключевое слово, почему RowHeight не работает здесь?

+0

я имел проблемы в то время как сочетающее RowHeight с вертикальными и горизонтальными Параметрами ячейки и ее контейнерами, так что будьте внимательны! для этого –

ответ

0

Кажется, что это ошибка в Xamarin.Forms 2.1.0. Надеюсь, что это скоро будет исправлено.

0

Это работает для ретранслятора xLabs и, безусловно, оно должно работать и для вашего списка.

Я использую свойство ChildAdded Event на ViewCell и отформатируйте его на кодовом коде .... Привет! Это работает!

    <!--Users added go here-->    
     <xLabs:RepeaterView x:TypeArguments="models:User" x:Name="UsersAddedStack" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" 
          ItemsSource="{Binding UsersAdded}" ItemClickCommand="{Binding AddedUserIconClicked}" Spacing="4"> 

     <xLabs:RepeaterView.ItemTemplate> 
      <DataTemplate>      
      <ViewCell ChildAdded="RepeaterChild_OnChildAdded"><!-- <====fixes height --> 
       <Frame Padding="0,6,0,6" OutlineColor="Transparent" HasShadow="False" BackgroundColor="White"> 
       <Grid HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" BackgroundColor="White"> 
        <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="2*"/> 
        <ColumnDefinition Width="8*"/> 
        </Grid.ColumnDefinitions> 
        <Image Grid.Column="0" Source="user256blue.png" Aspect="AspectFit" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"/> 
        <StackLayout Grid.Column="1" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"> 
        <!--First Name + Last Name--> 
        <Label Text="{Binding FullName}" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" HorizontalTextAlignment="Start" 
         BackgroundColor="White" FontSize="Medium" TextColor="Black"/> 
        <!--Username--> 
        <Label Text="{Binding Username}" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" HorizontalTextAlignment="Start" 
         BackgroundColor="White" FontSize="Medium" TextColor="Black"/> 
        </StackLayout> 
       </Grid> 
       </Frame> 
      </ViewCell> 
      </DataTemplate>     
     </xLabs:RepeaterView.ItemTemplate> 


     </xLabs:RepeaterView> 

private void RepeaterChild_OnChildAdded(object sender, ElementEventArgs e) 
{ 
    var viewCell = sender as ViewCell; 
    viewCell.View.HeightRequest = _ccfvm.IconHeight; //_ccfvm is my viewmodel for the page 
} 
Смежные вопросы