2010-11-05 2 views
3

кто-то рассматривал этот вопрос здесь http://social.msdn.microsoft.com/forums/en-US/wpf/thread/6f9dd3b5-af92-4076-9b4e-1a770dd52f70/МОФ WindowsFormsHost не видно, когда AllowsTransparency = «True»

, но это было в 2006 году я в настоящее время с использованием фреймворка .NET 3.5. Есть ли лучшее решение для этого сейчас. Кто-нибудь знает, имеет ли у Майкрософт прямое решение для этой проблемы в 4.0?

ответ

5

Да, это не сработает. Цитата this ссылки

Это ограничение использования WS_EX_LAYERED и UpdateLayeredWindow(). Эта форма оконных окон не поддерживает дочерние окна . Это ограничение Win32, не ограничение WPF. Дочерние окна может быть использованы с постоянной непрозрачностью (WS_EX_LAYERED и SetLayeredWindowAttributes), но WPF не поддерживает этот режим, как это более ограничительный (константа против попиксельного непрозрачности).

Лучшее решение, которое я смог найти, был от this.

Я добавил System.Windows.Forms.TextBox в окно AllowsTransparency, когда я его пытался, вы можете загрузить мою измененную версию с here.

+0

Это помогает. Спасибо. – user441660

Смежные вопросы