C#

2009-08-03 9 views
17

का उपयोग कर अन्य एप्लिकेशन के शीर्ष पर Messagebox.show() रखें। C# ?? का उपयोग कर अन्य एप्लिकेशन के शीर्ष पर Messagebox.show() को कैसे रखें?C#

+1

अतिरिक्त कोड के लिए कोई ज़रूरत नहीं है, इस प्रयास करें: http://stackoverflow.com/questions/4834819/c-sharp-messagebox-to-front-when- ऐप-है-मिनिमाइज्ड-टू-ट्रे –

उत्तर

20

नया फॉर्म बनाने के बिना, एक बेहतर समाधान है।

MessageBox.Show("Message Text", "Header", MessageBoxButtons.OK, MessageBoxIcon.None, 
    MessageBoxDefaultButton.Button1, (MessageBoxOptions)0x40000); // MB_TOPMOST 

0x40000 "MB_TOPMOST" -फ्लैग है।

+0

बस जो मैं चाहता था – harveyt

+0

यह मेरे लिए काम करता है – Masum

37

मैंने डोनटबॉय द्वारा प्रदान किए गए समाधान की कोशिश की और यह 0x40000 (या 40000) को MessageBoxOptions Enum मान के रूप में मान्य विकल्प के रूप में स्वीकार नहीं कर रहा है।

हालांकि मुझे पता चला है कि MessageBoxOptions.DefaultDesktop का उपयोग केवल वही प्रभाव डालता है और जब तक उपयोगकर्ता द्वारा इसकी पुष्टि नहीं की जाती है तब तक संदेश बॉक्स को शीर्ष पर रखता है। यानी।

MessageBox.Show("Hello there", "Prompt", MessageBoxButton.OK, MessageBoxImage.Warning, MessageBoxResult.OK, MessageBoxOptions.DefaultDesktopOnly); 

यह संभवतः प्रस्ताव पर सबसे सरल देशी समाधान है।

+0

हाँ, मैंने पाया कि यह भी काम करता है! कई सुझाव हैं लेकिन मैं सहमत हूं कि यह लागू करने का सबसे आसान तरीका है। –

+0

बिल्कुल मुझे क्या चाहिए! – Homer1982

+0

यह मेरे लिए काम किया !! धन्यवाद!! =) – marianotigre

3

इस संभाल करने के लिए एक और आसान तरीका:

MessageBox.Show(new Form { TopMost = true }, "This is TopMost", "TopMost", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);