2012-12-20 30 views
7

मेरे आवेदन में मैं उपयोगकर्ता को ShellToast के साथ सूचित करना चाहता हूं।मैं शेलटोस्ट कैसे बना सकता हूं?

बस चलाकर ...

var toast = new ShellToast 
{ 
    Title = "Nom nom nom!", 
    Content = "More! More! Keep feeding me!", 
}; 
toast.Show(); 

... कुछ नहीं बनाता है, और के रूप में मैं समझता हूँ कि यह एक ScheduledTaskAgent से चलाने की जरूरत है। लेकिन मैं इसे कमांड पर कैसे चला सकता हूं, और सुनिश्चित कर सकता हूं कि यह केवल एक बार चलता है?

उत्तर

24

ऐप एक अग्रभूमि ऐप होने पर आप शैलटॉस्ट का उपयोग नहीं कर सकते हैं। इसका मतलब पृष्ठभूमि सेवा से लिया जाना है जबकि ऐप अग्रभूमि ऐप नहीं है।

यदि आप शैलटॉस्ट के समान यूएक्स रखना चाहते हैं तो Coding4fun toolkit टोस्टप्रोप्ट नियंत्रण का उपयोग करें।

private void ToastWrapWithImgAndTitleClick(object sender, RoutedEventArgs e) 
    { 
     var toast = GetToastWithImgAndTitle(); 
     toast.TextWrapping = TextWrapping.Wrap; 

     toast.Show(); 
    } 

    private static ToastPrompt GetToastWithImgAndTitle() 
    { 
     return new ToastPrompt 
     { 
      Title = "With Image", 
      TextOrientation = System.Windows.Controls.Orientation.Vertical, 
      Message = LongText, 
      ImageSource = new BitmapImage(new Uri("../../ApplicationIcon.png", UriKind.RelativeOrAbsolute)) 
     }; 
    } 

इस कोड स्निपेट रनिंग निम्नलिखित शो:

ToastPrompt control with image

+0

हाय। मैं इस कोड की कोशिश कर रहा था। यह अवैध क्रॉस थ्रेड एक्सेस त्रुटि देता है। मैं इसे कैसे ठीक कर सकता हूं – PratPor

+0

आपको मुख्य थ्रेड में कोड चलाने के लिए है। – Hyndrix

0

बस एक छोटा सा अद्यतन: यहाँ एक कोड है कि यह कैसे उपयोग करने के लिए दिखा स्निपेट ShellToast का उपयोग करते समय एप्लिकेशन को अग्रभूमि में है, अब है संभव है, विंडोज फोन 8 अपडेट 3 का उपयोग करते समय। हालांकि, वे अन्य कॉलिंग जैसे फोन कॉल या लॉक स्क्रीन से अस्पष्ट हैं। Source

+0

मुझे लगता है कि आप इसे गलत पढ़ते हैं, "टोस्ट नोटिफिकेशन प्रदर्शित होते हैं जब लक्ष्य ऐप अग्रभूमि _but_ में चल रहा है अन्य गतिविधि जैसे फ़ोन कॉल या लॉक स्क्रीन से अस्पष्ट है"। – holmis83

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