2011-01-05 11 views
5

पर ट्रिगरिंग मैं विंडोज फोन 7 एप्लिकेशन पर काम कर रहा हूं जो मेरे कुछ सूची बॉक्स में FluidMoveBehavior का उपयोग करता है। किसी कारण से, FluidMoveBehavior एनीमेशन अनुचित समय पर सक्रिय करना चाहता है। मैं वर्तमान में मेरे मुख्य पृष्ठ पर एक ListBox है, और मुझे निम्नलिखित ItemsPanelTemplate जो सिर्फ एक FluidMoveBehavior इसे से जुड़े के साथ एक बुनियादी StackPanel है का उपयोग करें:FluidMoveBehavior पीछे नेविगेशन

<ItemsPanelTemplate x:Key="fancyListBoxItemsPanelTemplate"> 
    <StackPanel> 
     <Custom:Interaction.Behaviors> 
      <il:FluidMoveBehavior AppliesTo="Children"> 
       <il:FluidMoveBehavior.EaseX> 
        <ExponentialEase EasingMode="EaseInOut"/> 
       </il:FluidMoveBehavior.EaseX> 
       <il:FluidMoveBehavior.EaseY> 
        <ExponentialEase EasingMode="EaseInOut"/> 
       </il:FluidMoveBehavior.EaseY> 
      </il:FluidMoveBehavior> 
     </Custom:Interaction.Behaviors> 
    </StackPanel> 
</ItemsPanelTemplate> 

यह ठीक काम करता है जब मैं जोड़ने/आइटम हटा, जबकि एक ही स्क्रीन पर । एनीमेशन पूरी तरह से खेलता है। हालांकि, जब मैं अपने मुख्य पृष्ठ से किसी नए पृष्ठ पर नेविगेट करता हूं, तो वापस नेविगेट करता है, तरल पदार्थ एनीमेशन ट्रिगर होता है जैसे कि सभी आइटम एक साथ जोड़े जाते थे। क्या इस व्यवहार को अक्षम करने का कोई तरीका है, इसलिए जब सूची वास्तव में बदलती है तो यह केवल एनीमेशन को ट्रिगर करता है?

+1

मैं आपके लक्षणों का पुनरुत्पादन नहीं कर सकता। स्क्रीन के बीच नेविगेट करने के लिए आप किस तंत्र का उपयोग कर रहे हैं? –

+0

या तो बैक बटन या गोबैक() फ़ंक्शन इस व्यवहार को ट्रिगर करता है। एफवाईआई, लिस्टबॉक्स को पिवोट कंट्रोल में पिवोट इटम्स के भीतर होस्ट किया जाता है। क्या उपयोगकर्ता किसी भी तरह पिवोट कंट्रोल द्वारा अमान्य हो रहा है जब उपयोगकर्ता वापस नेविगेट करता है? हो सकता है कि व्यवहार ट्रिगर हो रहा है? –

उत्तर

1

ऐसा इसलिए हो रहा है क्योंकि जब आप सूची बॉक्स के साथ पृष्ठ पर नेविगेट करते हैं, तो सूची बॉक्स फिर से बनाया जाता है, जो एक ही समय में सभी वस्तुओं को जोड़ने के समान होता है जो टन्स में तरल पदार्थ ट्रिगर को सक्रिय करता है। एक संभव (वैध नहीं हो सकता है) समाधान दो समान ItemPanel टेम्पलेट होना चाहिए, एक व्यवहार के साथ और दूसरा इसके बिना। जब आप पहली बार पृष्ठ पर नेविगेट करते हैं तो व्यवहार को टेम्पलेट w/o लागू करें। बाद में इसे व्यवहार के साथ बदल दें। उम्मीद है कि मदद करता है।

संबंधित मुद्दे