Please do not reply to this email- if you want to comment on the bug, go to the URL shown below and enter your comments there.
Changed by [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=78080 --- shadow/78080 2006-05-09 16:55:02.000000000 -0400 +++ shadow/78080.tmp.5738 2006-05-16 03:42:50.000000000 -0400 @@ -10,13 +10,13 @@ Component: Windows.Forms AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] QAContact: [EMAIL PROTECTED] TargetMilestone: --- URL: -Summary: UserControl, BringToFront wrong behavior +Summary: DockStyle.Fill + BringToFront wrong behavior Description of Problem: When using BringToFront on a UserControl in a Panel, the z-order doesn't work correctly Steps to reproduce the problem: @@ -36,6 +36,69 @@ Always ------- Additional Comments From [EMAIL PROTECTED] 2006-04-11 17:07 ------- Created an attachment (id=16750) Sample to reproduce problem + +------- Additional Comments From [EMAIL PROTECTED] 2006-05-16 03:42 ------- +It is nothing to do with UserControl. It looks rather DockStyle.Fill +and BringToFront() matter. + +Minimized repro code: + +using System; +using System.Drawing; +using System.Windows.Forms; + +public class Form1 : Form +{ + Button button1; + Button button2; + System.Windows.Forms.Panel panel1; + Label f1; + Label f2; + + static void Main() + { + Application.Run(new Form1()); + } + + public Form1() + { + button1 = new Button(); + button2 = new Button(); + panel1 = new Panel(); + panel1.Dock = DockStyle.Top; + button1.Location = new Point(32, 8); + button1.Text = "Load page 1"; + button1.Click += new EventHandler(this.button1_Click); + button2.Location = new Point(160, 8); + button2.Text = "Load page 2"; + button2.Click += new EventHandler(this.button2_Click); + Controls.Add(this.button1); + Controls.Add(this.button2); + Controls.Add(this.panel1); + + f1 = new Label(); + f1.Text = "Panel 1"; + f1.Dock = DockStyle.Fill; + Controls.Add(f1); + f2 = new Label(); + f2.Text = "Panel 2"; + f2.Dock = DockStyle.Fill; + Controls.Add(f2); + } + + void button1_Click(object sender, System.EventArgs e) + { + f1.BringToFront(); + } + + void button2_Click(object sender, System.EventArgs e) + { + f2.BringToFront(); + } +} + +Comment out f1.Dock = DockStyle.Fill (or f2) and it will work (control +will be hidden, but keyboard control is still possible). _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
