Добавить прозрачное изображение поверх расширенной рамки

У меня возникла небольшая проблема с расширенной стеклянной рамкой DWM в форме окон.

Я расширил стеклянную рамку своей winform и добавил пользовательский элемент управления, который рисует на ней вкладку с белым фоном, почти как вкладки Google Chrome. Затем я добавил текст в области вкладок и до сих пор все работает нормально.

Теперь у меня есть другой элемент управления (PictureBox) с прозрачным png в качестве изображения, и я бы хотел, чтобы этот элемент управления перетаскивался куда-то на вкладку. В результате половина моего PictureBox может быть на вкладке (белый фон с текстом), а другая половина - на стеклянной рамке.

Если мой PictureBox имеет прозрачный BackColor, все в порядке, пока я остаюсь на стеклянной рамке, но когда я попадаю на вкладку, DWM считает его прозрачным и рисует стекло вместо фона вкладки, и, как я уже сказал, Предполагается, что png не должен быть конкретно на вкладке или на стекле, он может быть сброшен на них обоих.

Есть ли способ справиться с этим? Спасибо за вашу помощь, очень высоко ценится;-))

PS: Я уже рассмотрел создание CopyFromScreen для области PictureBox и установил его как BackgroundImage, но это не очень помогает, так как часть, которая была бы на стекле, не обновилась бы, если бы я переместил свой WinForm.

0 ответов

Другие вопросы по тегам