簡體   English   中英

在WPF TabControl中托管外部應用程序

[英]Host External Application in WPF TabControl

我已經設法創建了一個示例項目,該項目使用HwndHost在C#WPF選項卡控件中托管記事本( 不是我的真實項目將嵌入的內容 )。 對此,非常感謝那些在WPF窗口中回復托管外部應用程序的人順便說一下,不需要DwayneNeed

此示例非常有效,直到您單擊記事本的托管實例, 然后嘗試更改選項卡 如果您導航到的新頁面中沒有任何內容,則必須先單擊當前頁面選擇器,然后才能接受其他選項卡上的單擊。 如果您在其他頁面上有內容(任何內容......只是一個按鈕),那么您將被迫單擊新選項卡選擇器TWICE以使其導航。

我試過的東西不起作用:

  • 使用AttachThreadInput()連接兩個應用程序窗口的輸入線程。
  • 調用this.InvalidateVisual(); 在Tab Control鼠標按下事件上。

訣竅是什么:

  • 以編程方式將TabControl.SelectedIndex值更改為按下按鈕時所需的值。

為了解決這個問題,我想我將不得不在Tab選擇器的位置使用按鈕(使它們不可見)並且只是以編程方式更改頁面。 這不是什么大問題,但我想知道是否有其他人遇到過這個問題,並且可能有一個解釋!

ps我是WPF和C#的新手。

您托管的記事本應用程序是另一個窗口,因此如果焦點在記事本中 - 首先單擊選項卡選擇器激活您的WPF窗口並使其聚焦,而不是第二個cick執行您想要執行的操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM