Winform控制項在WPF中使用的注意事項

2021-08-21 17:24:20 字數 1027 閱讀 7042

從winform轉到wpf的時候,經常需要在wpf裡面採用一些以前用winform寫過的控制項。下面介紹在wpf中使用winform的方法和注意事項。

1、在wpf中使用winform的控制項

(1)新增必須的dll。主要有:windowsformsintegration.dll,system.windows.forms.dll

(2)在wpf中加入命名空間 

xmlns:wf="clr-namespace:system.windows.forms;assembly=system.windows.forms"

xmlns:wfi ="clr-namespace:system.windows.forms.integration;assembly=windowsformsintegration"

(3)加入控制項

注意事項:

(1)有時候即使加入了上面的**,有時候還是顯示不了winform控制項。此時需要在window加入屬性allowstransparency="false"

(2)winform控制項後wpf元素被winform控制項遮蓋問題

考慮如果是因為渲染機制問題,始終將winform控制項渲染在最上層的話,能不能將wpf元素也使用windowsformshost容器進行一層包裹呢?理論上應該是可以得,於是進行嘗試,最外層使用windosformshost,然後是wpf元素的容器elementhost,最後是我們需要的wpf介面元素:

xmlns=""

xmlns:x=""

xmlns:wfi ="clr-namespace:system.windows.forms.integration;assembly=windowsformsintegration"

title="mainwindow" height="350" width="525" loaded="window_loaded">

(3)wpf 忽略子控制項事件觸發父控制項事件

i****testvisible="false"

在Winform窗體中使用WPF控制項(附原始碼)

wpf控制項的漂亮是winform無法匹及的,本文主旨是在winform工程中如何使用wpf控制項。先看下效果,如下圖 左邊是傳統的winform控制項,右邊是debuglzq引入的wpf控制項,我們可以很清楚的看到的 半透明 效果 textbox的透明背景!介面很cool吧 下面就介紹下,這個創新...

在WPF中使用ImageBox控制項

文章參考於 還可參考 首先是安裝並配置emgucv。由於imagebox控制項只支援windowsform不支援wpf。所以我們需要在wpf平台上載入windows form,然後再載入imagebox的控制項。首先,需要向專案中的reference 引用 新增兩個dll,乙個是.net庫中的sys...

WinForm控制項與WPF控制項的互動

原文 winform控制項與wpf控制項的互動 這個問題其實也可以理解為 怎樣在wpf xaml中使用winform中的控制項 如picturebox 首先看看xaml 注意下面加粗的部分 c system.windows.forms.picturebox picturebox null void ...