C# 显示面板的按钮
当我试图在按下按钮时打开面板时,它不会显示。“在属性中可见”设置为false。我第一次使用此方法打开面板:C# 显示面板的按钮,c#,visual-studio-2008,windows-mobile,panel,C#,Visual Studio 2008,Windows Mobile,Panel,当我试图在按下按钮时打开面板时,它不会显示。“在属性中可见”设置为false。我第一次使用此方法打开面板: pnlSettings.Location = new Point(0, 0); pnlSettings.Size = this.ClientSize; pnlSettings.Visible = true; pnlSettings.BringToFront(); 该代码在第一次使用时起作用。但是当我尝试在程序中使用相同的代码
pnlSettings.Location = new Point(0, 0);
pnlSettings.Size = this.ClientSize;
pnlSettings.Visible = true;
pnlSettings.BringToFront();
该代码在第一次使用时起作用。但是当我尝试在程序中使用相同的代码时,它并不能完全工作
private void btnSettings_Click(object sender, EventArgs e)
{
int valueTemp;
valueTemp = _game.Settings.GetValue("MusicVolume", 2);
if (valueTemp < 0) valueTemp = 0;
if (valueTemp > 3) valueTemp = 3;
trackMusic.Value = valueTemp;
valueTemp = _game.Settings.GetValue("SoundFxVolume", 3);
if (valueTemp < 0) valueTemp = 0;
if (valueTemp > 3) valueTemp = 3;
trackSoundFx.Value = valueTemp;
pnlSettings.Location = new Point(0, 0);
pnlSettings.Size = this.ClientSize;
pnlSettings.Visible = true;
pnlSettings.BringToFront();
this.Menu = mnuTitleSettings;
}
还是不走运
提前感谢您的帮助。您是否有其他代码可以从其父控件的
集合中删除pnlSettings
?比如:
this.Controls.Remove(pnlSettings);
只有将控件添加到父控件集合中,它才会可见
pnlSettings.Location = new Point(0, 0);
pnlSettings.Size = this.ClientSize;
this.Controls.Add(pnlSettings);
再次删除面板时,不要忘记调用它的Dispose()方法。否。删除面板时没有任何问题那么为什么在btnSettings\u单击中的相同代码会起作用?它也没有将面板添加到控件中。我不知道。我的原始代码仍然有效,但我说它有效。Hans amendment使代码对第二个按钮起作用。@user662973:您可能已经在代码或设计器中的其他地方添加了面板。是的,很好地实现了。我在设计器中添加了面板。
this.Controls.Remove(pnlSettings);
pnlSettings.Location = new Point(0, 0);
pnlSettings.Size = this.ClientSize;
this.Controls.Add(pnlSettings);