限制面板中的添加控制
答
将AllowDrop设置为false。
答
如果您想限制可以添加到面板的控件类型或控件数量,您可以创建自己的面板子类,并在Controls.Add方法的重载中检查Control类型或Control count。
编辑:重载Controls.Add方法并不像我想象的那么容易,但是您可以创建一个新的类来扩展Panel类并重写OnControlAdded方法来检查已添加的控件的类型。像这样的东西应该工作:
class MyPanel : Panel
{
public MyPanel()
{ }
protected override void OnControlAdded(ControlEventArgs e)
{
base.OnControlAdded(e);
if (!(e.Control is Label))
{
MessageBox.Show("control " + e.Control.Name + " is not a label but a " + e.Control.GetType().ToString());
Controls.Remove(e.Control);
}
}
}
对不起,花花公子, 这将无法正常工作。 :( – Lalit 2008-10-30 11:42:34
对不起,您可能需要为您的问题添加更多的细节,然后是我应该这样做的兄弟,我应该这样做。 – Echostorm 2008-10-30 12:00:59