在創建多個控制項後,有些控制項會發生重疊,那麼就需要在滑鼠按下它時能顯示在最上層,下麵通過先將按下操作的控制項刪除然後再重建,就達到讓它顯示在最上層了 ...
在創建多個控制項後,有些控制項會發生重疊,那麼就需要在滑鼠按下它時能顯示在最上層,下麵通過先將按下操作的控制項刪除然後再重建,就達到讓它顯示在最上層了
//控制項按下 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]); } }