【发布时间】:2013-01-15 14:28:20
【问题描述】:
长期潜伏并自学 OOP 和 c# 非常感谢这里的伟大人物。我 99% 的问题似乎都是通过在网上搜索找到的,但我一直被这个问题困扰。
我的问题是我有一个自定义 GUI,我在其中堆叠了托管 WPF 用户控件的 elementhost 控件元素。我已经成功地使这些图形出现并执行它们的行为,但它们彼此之间并不透明。我有堆叠的图标,它们相互重叠,半透明的边缘应该融合在一起。这些图标是在paint.net 中制作的,并且确实具有正确的透明度图形。使用 host.BackColorTransparency = true,我能够使这些元素宿主对我的 winforms GUI 的背景透明,但它们彼此之间仍然不透明。
我在这里尽量做到描述性强。由于这是一个工作项目,我无法显示任何专有信息。如果有人需要更多信息,请告诉我。感谢您的帮助。
【问题讨论】:
-
所以我在构造函数中添加了这段代码。
-
host1 = new ElementHost(); host1.Location = new Point(389, 255); bigScroll1 = 新的 BigScroll(); host1.Child = bigScroll1; host2 = new ElementHost();//元素宿主 host2.Location = new Point(220, 280); medScroll1 = 新 MedScroll(); //wpf 带有图像的用户控件 host2.Child = medScroll1; host1.Controls.Add(host2); host2.Location = new Point(0, 0); host2.BackColor = 颜色.透明;现在它们都在表单上不可见。不知道从这里做什么。也没有 onpaint 事件。
标签: c# wpf transparency transparent elementhost