में संलग्न होने पर LongListSelector प्रदर्शन बहुत खराब है मेरे पास UserControl
है जिसमें शीर्ष पर नियंत्रण का एक समूह और LongListSelector
उनके नीचे होना चाहिए। पूरे UserControl
की कुल ऊंचाई स्क्रीन ऊंचाई से अधिक हो सकती है (और लगभग हमेशा होगी) और उस स्थिति में एक संपूर्ण UserControl
स्क्रॉल करने योग्य होना चाहिए।स्क्रॉलवियर
<staff:UserContentControl
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="clr-namespace:MyApp.Controls"
xmlns:staff="clr-namespace:MyApp.Helpers"
x:Class="MyApp.Controls.RemoteHomePage"
DataContext="{Binding RelativeSource={RelativeSource Self}}"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}">
<ScrollViewer>
<ScrollViewer.Content>
<StackPanel>
<TextBlock Txt="Text1" Sign="@" />
<TextBlock Txt="Text2" Sign="#" />
<controls:Divider />
<TextBlock Txt="Text3" Sign="~" />
<TextBlock Txt="Text4" Sign="~" />
<controls:TextDivider Text="Divider text" />
<phone:LongListSelector ItemsSource="{Binding Items}">
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Title}" />
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
</StackPanel>
</ScrollViewer.Content>
</ScrollViewer>
</staff:UserContentControl>
यह समाधान मेरी जरूरतों को संतुष्ट करता है, लेकिन यह भी एक बड़ी समस्या है:: वर्तमान में LongListSelector
लोड करने के लिए जब उसमें शामिल आइटमों की राशि काफी बड़ी है बहुत समय वास्तव में लेता है
मेरे मौजूदा सेटअप इस प्रकार है। 300 वस्तुओं को संसाधित करने में 8 सेकंड लगते हैं और उस समय पूरे यूआई को अवरुद्ध कर दिया जाता है। यहां तक कि वस्तुओं की काफी बड़ी राशि के साथ लगभग तुरंत
<staff:UserContentControl
...>
<phone:LongListSelector ItemsSource="{Binding Items}">
<phone:LongListSelector.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Title}" />
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
</staff:UserContentControl>
तो LongListSelector
भार: यदि मैं लेकिन LongListSelector
सब कुछ को हटाने, इसलिए पसंद है। लेकिन जाहिर है, मुझे इसके ऊपर उन अन्य नियंत्रणों की आवश्यकता है, इसलिए सवाल यह है कि मैं इस मुद्दे को हल कर सकता हूं?
(इसके अलावा संबंधित प्रश्न: मैं चिंतित था कि LongListSelector
ScrollViewer
अंदर डबल स्क्रॉल या कि लेकिन जैसे कुछ कारण बन सकता है अंत में सब कुछ मुझे यकीन है कि नहीं है कि यह अन्य स्क्रॉल अंदर है अगर LongListSelector
किसी भी तरह जानता हूँ इस संबंध में ठीक निकला। नियंत्रण या अगर कुछ और होता है तो मुझे पता नहीं होता है। कुछ व्याख्यान यह ठीक काम करता है, हालांकि बहुत धीमा, बहुत सराहना की जाएगी।)
आप इसे गलत कर रहे हैं। –
@MathiasLykkegaardLorenzen :) – Anton