欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#把动态创建的多个控件中指定控件显示在最上层

程序员文章站 2022-05-08 08:14:43
在创建多个控件后,有些控件会发生重叠,那么就需要在鼠标按下它时能显示在最上层,下面通过先将按下操作的控件删除然后再重建,就达到让它显示在最上层了 ......

在创建多个控件后,有些控件会发生重叠,那么就需要在鼠标按下它时能显示在最上层,下面通过先将按下操作的控件删除然后再重建,就达到让它显示在最上层了

//控件按下
private void picturebox_mousedown(object sender, mouseeventargs e)
{
     setmetop(sender); 
}
//设置控件在最上层
private void setmetop(object obj)
{
    //原理:先添加的控件会在最上面,即可见次序是由index决定的.
    int index = this.controls.getchildindex((control)obj);//取得要置顶控件的index
    arraylist al = new arraylist();//用来装入控件的容器
    for (int i = 0; i < index; i++)//把要置顶控件上面的控件都装入容器
        al.add(this.controls[i]);
    for (int i = 0; i < al.count; i++)
    {
        //用一次删除和一次添加操作,让它上面的控件排到下面去.
        this.controls.remove((control)al[i]);
        this.controls.add((control)al[i]);
    }
}