1

单击网格中的单元格时,我试图显示一个弹出窗口。弹出窗口有一个用户控件,其中包含一个元素主机。我正在尝试使弹出窗口透明,以便我可以看到下面网格上的内容,但它似乎不起作用。我正在使用 ToolStripDropDown 来显示弹出窗口。

这是我的弹出代码

ToolStripDropDown popup = new ToolStripDropDown();
popup.BackColor = Color.Transparent;
UserControl2 userControl = new UserControl2(popup);
userControl.Show();
popup.Margin = Padding.Empty;
popup.Padding = Padding.Empty;
ToolStripControlHost host = new ToolStripControlHost(userControl);
host.BackColor = Color.Transparent;
host.Margin = Padding.Empty;
host.Padding = Padding.Empty;
popup.Items.Add(host);

这是 UserControl 本身的代码

public partial class UserControl2 : UserControl
{
    private ToolStripDropDown popup;
    public UserControl2(ToolStripDropDown toolStrip)
    {
        InitializeComponent();
        SetStyle(ControlStyles.SupportsTransparentBackColor, true);
        this.BackColor = Color.Transparent;
        popup = toolStrip;

        this.elementHost1.BackColorTransparent = true;
    }
}

这就是结果在此处输入图像描述

有人可以告诉我在这里做错了什么,有没有办法显示一个透明的弹出窗口。弹出窗口最终将承载一个透明的 WPF 控件。

谢谢。

4

0 回答 0