Khi bạn đặt nhiều hơn một điều khiển ở cùng một vị trí, đầu tiên sẽ kết thúc ở trên và mặt kia sẽ kết thúc bên dưới. Thường thì đây là kết quả của một lỗi nhỏ, chẳng hạn như sử dụng tính năng neo và gắn không chính xác để có thể thay đổi kích thước form.In một số trường hợp, tuy nhiên, bạn có thể muốn chồng chéo điều khiển cho một hiệu ứng cụ thể.
Khi kiểm soát chồng lên nhau, đó là chỉ mục z xác định kiểm soát nào kết thúc ở trên cùng.Essentially, mọi điều khiển tồn tại trong lớp được đánh số riêng biệt. Kiểm soát có lớp z-index 1 sẽ xuất hiện phía trên điều khiển trong z-index layer 2 nếu chúng chồng lên nhau. Thông thường, chỉ mục z của một nhóm các điều khiển được xác định theo thứ tự mà bạn thêm các điều khiển, để điều khiển cuối cùng bạn thêm luôn ở lớp trên cùng (với z- chỉ số 0).
Tuy nhiên, bạn có thể thay đổi các tùy chọn này.
Để xác định hoặc đặt chỉ mục z của điều khiển, bạn có thể sử dụng phương pháp GetChildIndex()
và SetChildIndex()
của Bộ sưu tập điều khiển. Đây là ví dụ di chuyển điều khiển đến lớp thứ ba trong chỉ mục z.
Controls.SetChildIndex(ctrl, 2);
Thông thường, bạn sẽ không cần điều khiển kiểu chi tiết này. Đồng thời, bạn chỉ muốn thả điều khiển vào mặt sau của chỉ mục z (lớp dưới cùng) hoặc mang Bạn có thể hoàn thành tính năng này tại thời điểm thiết kế bằng cách nhấp chuột phải vào điều khiển và chọn Bring to Fron hoặc Send to Back.Bạn cũng có thể thực hiện cùng một tác vụ theo chương trình bằng cách sử dụng phương thức Control.BringToFront()
hoặc Control.SendToBack()
.
ctrl.BringToFront(); // This is equivalent to Controls.SetChildIndex(ctrl,0);
Tôi thấy hữu ích. Cũng tìm thấy GetChildIndex để tìm ra tại thời gian chạy mà kiểm soát được trên đầu trang. Cảm ơn. –