【发布时间】:2016-09-06 14:55:50
【问题描述】:
我正在开发一个 winforms 应用程序。我有一个名为“MainForm”的表单,其中包含用户控件。用户控件中有一个复选框,在某些情况下应该隐藏 - 这就是我为它创建属性的原因。问题是,每当我打开主窗体并对其进行任何更改时,设计器都会将该属性更改为 false,因此控件中的复选框不可见。
有没有办法防止这种行为? (我用的是VS2012)
更新:
在我控制的代码隐藏中,我有一个属性
public bool IsWebOmmitVisable
{
get { return ommitCheckBox.Visible; }
set { ommitCheckBox.Visible = value; }
}
在控件的构造函数中,我将其设置为 true:
public myControl()
{
InitializeComponent();
IsWebOmmitVisable = true;
...
不过看起来没关系。
然后我将此控件添加到 MainForm。该属性在控件的属性中可见。但是,每当我修改 MainForm 中的任何元素时,该属性都会设置为 false。
【问题讨论】:
-
你如何设置可见为假?需要在VS非自动生成的部分设置
-
分享该属性的代码。
-
目前这个问题没有足够的信息来回答没有您的财产的代码。如果我猜一下,您需要使用属性 (msdn.microsoft.com/en-us/library/…) 使其默认为 true
-
您共享的代码不会重现问题。发布Minimal, Complete, and Verifiable example 重现问题。
-
顺便说一句,请记住它是“可见”和“省略”(如果您要跳过某些内容)。
标签: c# winforms visual-studio-2012