[Mono-bugs] [Bug 78458][Maj] New - Enable Panel does not enable
it's contents correctly
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Fri May 19 13:57:50 EDT 2006
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 armin.dressler at imk.fraunhofer.de.
http://bugzilla.ximian.com/show_bug.cgi?id=78458
--- shadow/78458 2006-05-19 13:57:50.000000000 -0400
+++ shadow/78458.tmp.20044 2006-05-19 13:57:50.000000000 -0400
@@ -0,0 +1,117 @@
+Bug#: 78458
+Product: Mono: Class Libraries
+Version: 1.1
+OS: SUSE 9.2
+OS Details: also on FedoraCore4
+Status: NEW
+Resolution:
+Severity:
+Priority: Major
+Component: Windows.Forms
+AssignedTo: peter at novonyx.com
+ReportedBy: armin.dressler at imk.fraunhofer.de
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Enable Panel does not enable it's contents correctly
+
+Description of Problem:
+I have placed some Windows.Form Controls (like checkBox or comboBox) on a
+panel, that is disabled. If the enable state is updated, the controls on
+the panel are not updated correctly. The checkBox for example looks like
+it's enabled, but it's not clickable.
+
+
+Steps to reproduce the problem:
+1. Create a panel in a Windows.Form, panel.Enabled = false
+2. Add the checkbox to the panel
+3. enable/disable the panel by the program
+
+Actual Results:
+The checkBox turns from grayed-out to normal, but it is not possible to
+change the checkBox state by clicking it. The checkBox is only an example,
+this does happen with other controls, too. Some controls even do not
+reflect the enable state optically correct (like comboBox).
+
+Expected Results:
+The checkBox (and other controls) should be enabled/disabled like the
+parent panel and should reflect the state.
+
+How often does this happen?
+always
+
+Additional Information:
+SourceCode from VisualStudio.Net with little test application:
+
+using System;
+using System.Drawing;
+using System.Collections;
+using System.Windows.Forms;
+using System.Data;
+
+namespace monotest
+{
+ public class Form1 : System.Windows.Forms.Form
+ {
+ private System.Windows.Forms.ComboBox comboBox;
+ private System.Windows.Forms.CheckBox checkBox;
+ private System.Windows.Forms.CheckBox checkBoxEnable;
+ private System.Windows.Forms.Panel panel;
+
+ public Form1()
+ {
+ InitializeComponent();
+ }
+
+ protected override void Dispose( bool disposing )
+ {
+ base.Dispose( disposing );
+ }
+
+ private void InitializeComponent()
+ {
+ this.panel = new System.Windows.Forms.Panel();
+ this.comboBox = new System.Windows.Forms.ComboBox();
+ this.checkBox = new System.Windows.Forms.CheckBox();
+ this.checkBoxEnable = new System.Windows.Forms.CheckBox();
+
+ this.panel.BackColor = System.Drawing.Color.Gainsboro;
+ this.panel.Controls.Add(this.comboBox);
+ this.panel.Controls.Add(this.checkBox);
+ this.panel.Enabled = false;
+ this.panel.Location = new System.Drawing.Point(16, 56);
+ this.panel.Size = new System.Drawing.Size(128, 80);
+
+ this.comboBox.Items.Add("test1");
+ this.comboBox.Items.Add("test2");
+ this.comboBox.Items.Add("test3");
+ this.comboBox.Location = new System.Drawing.Point(14, 48);
+ this.comboBox.Size = new System.Drawing.Size(100, 21);
+
+ this.checkBox.Location = new System.Drawing.Point(14, 10);
+ this.checkBox.Text = "checkBox";
+
+ this.checkBoxEnable.Location = new System.Drawing.Point(24, 16);
+ this.checkBoxEnable.Text = "Enable Panel";
+ this.checkBoxEnable.CheckStateChanged += new
+System.EventHandler(this.checkBoxEnable_CheckStateChanged);
+
+ this.ClientSize = new System.Drawing.Size(162, 156);
+ this.Controls.Add(this.checkBoxEnable);
+ this.Controls.Add(this.panel);
+ this.Text = "Form1";
+ }
+
+ static void Main()
+ {
+ Application.Run(new Form1());
+ }
+
+ private void checkBoxEnable_CheckStateChanged(object sender,
+System.EventArgs e)
+ {
+ this.panel.Enabled = this.checkBoxEnable.Checked;
+ }
+ }
+}
More information about the mono-bugs
mailing list