窗体控件visible属性问题
近日在检查一个程序代码的时候,发现有一处的行为有点异常。我原本是在窗体的构造器中检测控件的visible属性,然后决定一些操作。但发现那个visible属性一直为false,不禁诧异。
后来转念一想,在构造器中,控件并没有显示出来,那么它的visible理应确实为false. 那么,该如何解决这个问题呢?
其实也简单,只要把这些代码移动到OnLoad中即可。
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
try
{
//读取所有的选项
if (GeneralSettings.Visible)
{
chkuploadFile.Checked = Utility.ReadAppSetting("UpLoadContentFile") == "1";
chkValidation.Checked = Utility.ReadAppSetting("RequiredValidation") == "1";
chkEncrypt.Checked = Utility.ReadAppSetting("RequiredEncryption") == "1";
chkcompress.Checked = Utility.ReadAppSetting("RequiredCompression") == "1";
}
//chkValidatePreviousMonth.Checked = Utility.ReadAppSetting("ValidatePreviousMonthData") == "1";
txtConnectionStrings.Text = ConfigurationManager.ConnectionStrings["SqlServices"].ConnectionString;
}
catch (Exception ex)
{
Utility.ShowErrorMessage("读取配置文件出错,请通知管理员 : " + ex.Message);
}
}