我在我的代码中处理了一个对象,我现在想再次创建它。
我该怎么做?
答案是:
private void showToolStripMenuItem_Click(object sender, EventArgs e)
{
xpPanelGroup1.CreateControl();
xpPanelGroup1.Visible = true;
...
}
private void noShowToolStripMenuItem_Click(object sender, EventArgs e)
{
xpPanelGroup1.Visible = false;
...
xpPanelGroup1.Dispose();
}
答案 0 :(得分:5)
调用Dispose()
后,您需要创建一个新对象。
但是如果您想稍后重复使用该对象,则不应该将其丢弃,如果您暂时想隐藏控件,可以尝试使用Hide
或.Visible = false
或类似对象。
编辑:在您的代码中创建一个新的xpPanelGroup1:
UIComponents.XPPanelGroup xpPanelGroup1 = new UIComponents.XPPanelGroup() ;
但这只是showToolStripMenuItem_Click
方法的本地方法。如果你只输入
xpPanelGroup1 = new UIComponents.XPPanelGroup() ;
您正在使用类成员,这是您在noShow方法中处置的相同变量 但我仍然建议隐藏而不是处置。
答案 1 :(得分:0)
您应该查看您的设计代码(在设计时自动生成的“.designer.cs”文件),然后尝试调用它。这是实例化窗口小部件时运行的代码。
答案 2 :(得分:0)
也许您可以将对象设置为null而不是将其处理,并在您想再次使用它时将其重新分配给另一个值。