我有一个LLS,显示2组朋友(在线和离线)。我的问题:当我开始滚动LLS时 - 它有2个变种:1)LLS滚动好,2)它不滚动。当它不滚动时 - 我开始在不同的地方垂直滚动屏幕,并且在屏幕的某个位置我找到LLS开始滚动的位置。但!在第二次 - 在这个地方LLS不滚动,我再次尝试在屏幕上找到LLS滚动的地方。看起来LLS的scrollviewer随机改变位置和大小。这是我的LLS:
<controls:PanoramaItem Header="1">
<Grid Height="500" >
<toolkit:LongListSelector Name="AllFriendsList" Height="500" Width="420"
ItemTemplate="{StaticResource citiesItemTemplate}"
ListHeaderTemplate="{StaticResource citiesListHeader}"
ListFooterTemplate="{StaticResource citiesListFooter}"
GroupHeaderTemplate="{StaticResource groupHeaderTemplate}"
GroupItemTemplate="{StaticResource groupItemTemplate}" >
<toolkit:LongListSelector.GroupItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel/>
</ItemsPanelTemplate>
</toolkit:LongListSelector.GroupItemsPanel>
</toolkit:LongListSelector>
</Grid>
</controls:PanoramaItem>
和样式:
<DataTemplate x:Key="citiesListHeader">
<Border Background="Purple">
<TextBlock Text="Cities Header" />
</Border>
</DataTemplate>
<DataTemplate x:Key="citiesListFooter">
<Border Background="Green">
<TextBlock Text="Cities Footer" />
</Border>
</DataTemplate>
<!-- The template for city items -->
<DataTemplate x:Key="citiesItemTemplate">
<StackPanel Grid.Column="1" VerticalAlignment="Top">
<Line Style="{StaticResource Line1}" ></Line>
<Line Style="{StaticResource Line2}" ></Line>
<TextBlock Margin="75,15,40,0" FontSize="30" Name="Name" Text="{Binding Name}" Tap="GetUserInfo" />
<Image HorizontalAlignment="Left" Width="75" Name="Photo" >
<Image.Source>
<BitmapImage UriSource="{Binding Image}" CreateOptions="BackgroundCreation" />
</Image.Source>
</Image>
</StackPanel>
</DataTemplate>
<!-- The group header template, for groups in the main list -->
<DataTemplate x:Key="groupHeaderTemplate">
<Border Background="YellowGreen" Margin="6">
<TextBlock Text="{Binding Title}" FontSize="40" Foreground="Black"/>
</Border>
</DataTemplate>
<DataTemplate x:Key="groupItemTemplate" >
<Border Background="YellowGreen" Width="99" Height="99" Margin="6">
<TextBlock Text="{Binding Title}" FontSize="40" Foreground="Black"/>
</Border>
</DataTemplate>
我没有更改控件名称,我从here获取了它们。
答案 0 :(得分:0)
问题在于滚动仅适用于控件。因此,如果我将鼠标放在图像或文本块上 - 它滚动得很好(我的LLS有空位而没有任何控件),当我尝试在空白处滚动时 - 它不会滚动。
答案 1 :(得分:0)
在DataTemplate的StackPanel上放置透明背景。命中测试系统必须有像素才能使用,即使它们是透明的。不过,不要随意添加背景,否则你的帧速率会下降。