2013-04-13 7 views
6

की तरह पक्ष मेनू पट्टी बनाने मैं फेसबुकविंडोज फोन फेसबुक

मैं एक usercontrol बना सकते हैं और अलग अलग स्क्रीन और भी टोकरा PhoneApplicationPage के लिए कुछ बटन डाल दिया और डाल दिया है की तरह पक्ष मेनू पट्टी बनाने का प्रयास कर विंडोज फोन 7 के विकास में नया हूँ बटन कि जब मैं उस बटन पर क्लिक करूंगा तो मेन्यूबार की तरह ऊपरी दाएं से आने का प्रयास करें। सही पक्ष में है और अगर फिर

शो क्लिक करें कि ऊपरी दाएँ बटन यह को छिपाने के लिए चाहते हैं, तो किसी भी एक है कि साझा करें कोड या उदाहरण

धन्यवाद के बारे में पता नहीं है।

उत्तर

0

वैसे वहाँ ऐसा करने के लिए आईओएस की तरह एक आसान तरीका नहीं है। लेकिन आप Visual State Manager का उपयोग कर सकते हैं।

मूल रूप से, आपके चरण की तुलना में एक बड़ी स्क्रीन आकार। फिर, आपको एक ऐसा राज्य बनाना होगा जो आपकी स्क्रीन को मंच में थोड़ा सा बाएं स्थानांतरित कर दे और आप एक बटन का उपयोग कर सकें। आपको क्लिक विधि पर बटन को बटन पर कॉल करने की आवश्यकता है।

पुनश्च: स्टोरीबोर्ड का प्रयोग न करें। राज्यों का उपयोग करें यह करने का सबसे आसान तरीका है।

9

मैं सिर्फ इस बात के लिए एक पूर्ण समाधान ब्लॉग किया है ... और वास्तव में आप दृश्य स्टेट्स की जरूरत है! http://depblog.weblogs.us/2013/07/22/facebook-like-settings-pane-windows-phone/

+2

ध्यान दें कि लिंक-केवल उत्तर ही निराश होते हैं, इसलिए SO समाधान एक समाधान के लिए खोज का अंत बिंदु होना चाहिए (बनाम अभी तक संदर्भों का एक और स्टॉपओवर, जो समय के साथ पुराना हो जाता है)। लिंक को संदर्भ के रूप में रखते हुए, यहां स्टैंड-अलोन सारांश जोड़ना पर विचार करें। – kleopatra

+1

Kleopatra ... सच है, लेकिन कुल समाधान StackO में प्रतिक्रिया के रूप में बड़ी है।कुल मिलाकर विचार दृश्य राज्य प्रबंधक का उपयोग करने के लिए पहले से ही दिया गया था, मैं केवल एक काम करने योग्य डाउनलोड करने योग्य परियोजना को इंगित कर रहा हूं। – Depechie

+0

@Depechie अपने ब्लॉग पर पूर्ण समाधान से लिंक करना ठीक है, लेकिन कम से कम यहां पर्याप्त जानकारी शामिल है ताकि यहां तक ​​कि यदि आपका ब्लॉग कल चला जाता है, तो यह अभी भी कुछ उपयोगी उत्तर होगा। –

1

बाहर चेक SlideView, के रूप में वर्णित "... नेविगेशन विंडोज फोन पर आधिकारिक फेसबुक अनुप्रयोग से प्रेरित दराज।" https://slideview.codeplex.com/

संपादित एक बार जब आप nuget के स्थापित पैकेज SlideView

एक UserControl कि SlideView आप चाहते हैं का प्रतिनिधित्व करेंगी बनाएं माध्यम SlideView स्थापित किया है, LeftView.xaml का कहना है। आप अपने App.xaml.cs संपादित दूसरे पक्ष के लिए किसी अन्य उपयोगकर्ता नियंत्रण बना सकते हैं, कहते हैं कि RightView.xaml

फिर अपने App.xaml फ़ाइल में, एक संसाधन के रूप SlideView परिभाषित करते हैं,

xmlns:slideView="using:SlideView.Library" 
xmlns:views="using:SideNav.Views" 
xmlns:local="using:SideNav"> 

<Application.Resources> 
    <slideView:SlideApplicationFrame Header="SlideView" Background="White" x:Key="RootFrame" > 
     <slideView:SlideApplicationFrame.LeftContent> 
      <views:LeftView/> 
     </slideView:SlideApplicationFrame.LeftContent> 
     <slideView:SlideApplicationFrame.RightContent> 
      <views:RightView/> 
     </slideView:SlideApplicationFrame.RightContent> 
    </slideView:SlideApplicationFrame> 
</Application.Resources> 

एक बार किया डिफ़ॉल्ट RootFrame बदल सकते हैं और वें OnLaunchedMethod

को
public sealed partial class App : Application 
{ 
    private TransitionCollection transitions; 

    public static SlideApplicationFrame RootFrame { get; private set; } 

    protected override void OnLaunched(LaunchActivatedEventArgs e) 
    { 

     RootFrame = Window.Current.Content as SlideApplicationFrame; 

     // Do not repeat app initialization when the Window already has content, 
     // just ensure that the window is active 
     if (RootFrame == null) 
     { 
      // Create a Frame to act as the navigation context and navigate to the first page 
      RootFrame = this.Resources["RootFrame"] as SlideApplicationFrame; 

      // TODO: change this value to a cache size that is appropriate for your application 
      RootFrame.CacheSize = 1; 

      // Set the default language 
      RootFrame.Language = Windows.Globalization.ApplicationLanguages.Languages[0]; 

      if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) 
      { 
       // TODO: Load state from previously suspended application 
      } 

      // Place the frame in the current Window 
      Window.Current.Content = RootFrame; 
     } 

     if (RootFrame.Content == null) 
     { 
      // Removes the turnstile navigation for startup. 
      if (RootFrame.ContentTransitions != null) 
      { 
       this.transitions = new TransitionCollection(); 
       foreach (var c in RootFrame.ContentTransitions) 
       { 
        this.transitions.Add(c); 
       } 
      } 

      RootFrame.ContentTransitions = null; 
      RootFrame.Navigated += this.RootFrame_FirstNavigated; 

      // When the navigation stack isn't restored navigate to the first page, 
      // configuring the new page by passing required information as a navigation 
      // parameter 
      if (!RootFrame.Navigate(typeof(MainPage), e.Arguments)) 
      { 
       throw new Exception("Failed to create initial page"); 
      } 
     } 

     // Ensure the current window is active 
     Window.Current.Activate(); 
    } 
} 

यह काम करना चाहिए .. बस Rightview.xaml और LeftView.xaml सामग्री जोड़ते हैं। किसी कारण मेरी WindowsPhone 8.1 XAML दुर्घटनाग्रस्त हो गया जब मैं इसे शुरू किया है। लेकिन सब कुछ काम किया जब मैं SlideView की Zumicts कांटा जो एक nuget पैकेज यहाँ

Install-Package SlideView.Library.WP81.Zumicts 

किसी को भी एक ही समस्या आ रही है के रूप में उपलब्ध है इस्तेमाल किया?