我正在创建一个 UserControl,它有一个SetCameraCount
可以在控件实际显示之前和/或之后使用的方法。
如果在控件显示之前SetCameraCount
使用,那么除了设置控件在第一次加载时使用它之外什么都不应该做。cameraCount
如果在加载控件后SetCameraCount
设置了 is used ,则控件应该以与第一次加载时相同的方式使用新值进行更新。cameraCount
为此,我使用_IsLoaded
bool 来检查 UserControl 是否已加载。
bool _IsLoaded;
int cameraCount;
public void SetCameraCount(int cameraCount)
{
if (this.cameraCount != cameraCount)
{
this.cameraCount = cameraCount;
if (_IsLoaded)
buildMenu();
}
}
void CamMultiple_Load(object sender, EventArgs e)
{
buildMenu();
_IsLoaded = true;
}
void buildMenu()
{
// this method will absolutely fail if the control is not loaded
// ...
}
我经常使用这种模式。
虽然它工作正常,但我想知道是否可以用_IsLoaded
Windows 窗体中已经实现的某些属性替换 bool。现在我什么也没找到。你知道这样的房产吗?