您好社区我希望在以下事项上得到您的指导。我有这种情况,我需要在 webbrowser 控件之上有一个具有透明背景的用户控件。我已经尝试了以下代码。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Sample{
public partial class MainWindow : Form {
public MainWindow() {
InitializeComponent();
}
public void SetControlZOrder(Control ctrl, int z) {
ctrl.Parent.Controls.SetChildIndex(ctrl, z);
}
bool toggle = false;
private void button1_Click(object sender, EventArgs e) {
if (toggle) {
SetControlZOrder(someUserControl, 1);
SetControlZOrder(webBrowser1,2);
toggle = false;
} else {
SetControlZOrder(someUserControl,2);
SetControlZOrder(webBrowser1, 1);
toggle = true;
}
}
private void MainWindow_Load(object sender, EventArgs e) {
//Do some stuff
}
}
}
在此示例中,当我访问 button1_Click 时,我希望“someUserControl”位于 webbrowser 控件的顶部。但是,似乎“someUserControl”一直显示表单的背景颜色,而不是 webcontrol,即使 webcontrol 就在它的正下方。如何在 winforms 的 web 控件之上拥有一个透明的用户控件?
谢谢,