Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9236309
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 18, 20262026-06-18T07:15:40+00:00 2026-06-18T07:15:40+00:00

I have a UserControl-derived control with several sub-controls (here: three docked labels). In order

  • 0

I have a UserControl-derived control with several sub-controls (here: three docked labels). In order to react on a click anywhere on the UserControl, I override WndProc() and look for

WM_PARENTNOTIFY/WM_LBUTTONCLICK

— this was suggested on MSDN, and it does work well.

The reaction on the user’s mouseclick is to open a (modal) popup dialog. However, when I try to implement this, a strange behaviour shows up: Sometimes, the dialog flickers several times, and a Windows sound occurs. After closing the dialog, the user has to click into the main window (containing the UserControl) to re-set the focus. Sometimes, no flicker and no sound, but the main form loses focus as well.

In contrast to this, the button next to the UserControl also opens that popup dialog. There is no flicker and no sound, and after closing the popup the main window automatically has the focus again.

What’s wrong with the UserControl/WndProc construction?

I’m including an example project (VS2008) to illustrate the behaviour: (via DropBox)

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-18T07:15:42+00:00Added an answer on June 18, 2026 at 7:15 am

    Try using BeginInvoke to start the event after the WndProc method has finished:

    protected override void WndProc(ref Message m) {
      //0x210 is WM_PARENTNOTIFY
      if (m.Msg == 0x210 && m.WParam.ToInt32() == 513)    //513 is WM_LBUTTONCLICK
        {
        Console.WriteLine("## MouseClick on UserControl1 ");
        this.BeginInvoke(new Action(() => UserControlClicked(this, new EventArgs())));
        return;
      }
      /*
      else if (m.Msg == 0x2a1) // WM_MOUSEHOVER
          TTrace.Debug.Send("## WMsg " + m.Msg + " / WParam " + m.WParam.ToInt32());
      */
      base.WndProc(ref m);
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a control library that consists of only UserControl derived controls. I am
I have a customized WPF control that is derived from UserControl. In the Resources
I have a C++/CLI System::Windows::Forms::UserControl derived control which should only redraw (a small portion
I have a UserControl-derived control the displays some information fetched from a web server.
I have a class derived from System.Windows.Controls.UserControl, and I need to add a PropertyChangedCallback
I have C# control derived from UserControl. When I close the design view of
I have a control derived from System.Windows.Forms.UserControl which is placed in a customized grid.
I have a UserControl which I have added to my web.config <add tagPrefix=BCF src=~/controls/MyMessageBox.ascx
I have an ASP.NET WebForms control (derived from Control, not WebControl, if it helps)
I have usercontrol in my page loaded using Page.Controls.Add(ctrl) Now, I have button in

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.