मैं कई बातें की कोशिश की है, लेकिन उनमें से कोई काम करने के लिए प्रपत्र नहीं ला सकता है ...लगातार सामने
मैं फार्म कि NotifyIcon क्लिक करने पर सभी विंडोज के सामने आना चाहिए है। तो यहाँ मैं क्या करने की कोशिश की है: अगर ब्लॉक के अंत में
SetForegroundWindow(this.Handle);
जोड़कर
[return: MarshalAs(UnmanagedType.Bool)]
[DllImport("user32", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
public static extern bool SetForegroundWindow(IntPtr hwnd);
:
private void notifyIcon1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.TopMost = true;
this.BringToFront();
this.Focus();
this.TopMost = false;
}
}
तब मैं SetForegroundWindow का उपयोग करने की कोशिश की।
अंत में, मैंने देखा कि जब यह नोटिफ़िकॉन पर सही माउस बटन पर क्लिक नहीं करता है और संदर्भ मेनू खोला जाता है, तो मैं नोटिफ़िकॉन पर क्लिक कर सकता हूं और यह इसे सामने लाता है। वैकल्पिक हल के लिए एक संभावित विचार के रूप में,
cmsNotifyIcon.Show();
cmsNotifyIcon.Close();
तो यह है कि यह पता चलता है और बंद कर देता है NotifyIcon संदर्भ मेनू, लेकिन यह मदद नहीं करता है:
कि मैंने शुरू में इस कोड को जोड़ने की कोशिश की है।
इस बारे में कोई विचार कैसे करें, या इसके आसपास काम करें?
अच्छा विचार, सक्रिय() इसे ठीक नहीं कर सकता है। –
मैं कोशिश कर सकता हूं, लेकिन मुझे इसमें उच्च उम्मीद नहीं है, क्योंकि माउसडाउन ईवेंट ट्रिगर किया गया है, मैं देख सकता हूं कि अगर मैं कोड में ब्रेक पॉइंट डालता हूं। वैसे भी, क्योंकि यह लगातार नहीं होता है, मुझे परीक्षण करने के लिए कुछ समय चाहिए। –
मुझे लगता है कि मेरे पास दावा करने के लिए पर्याप्त अवलोकन थे कि यह मेरी समस्या का समाधान होना चाहिए। अगर किसी तरह की समस्या फिर से दिखाई देती है, तो मैं इसकी रिपोर्ट करूंगा। –