簡體   English   中英

如何使用C#在WPF中開發類似谷歌Chrome瀏覽器的應用程序

[英]How to develop an application like Google Chrome browser in WPF using C#

I am trying to develop an windows application like Google chrome Browser in WPF

使用C#。我在制作我自己的自定義窗口和在該窗口的標題位置的位置放置標簽時遇到問題。 請建議我如何去做,有什么工具嗎?

請指導我..........

更新:

嗨朋友感謝您的積極回應,我也按照您提供的鏈接和您說的方式,但我仍然懷疑開發應用程序,請給我一些更多的想法,我可以通過使用谷歌Chrome控件來開發此應用程序。 我想給我的應用程序谷歌瀏覽器的外觀和感覺.....

我剛剛為WPF完成了類似Google Chrome的Tab Control。 您可以在https://github.com/realistschuckle/wpfchrometabs找到該項目,並在博客文章中描述它

希望有所幫助!

谷歌瀏覽器本質上是自定義繪制窗口的非客戶區域,以刪除它認為多余的東西,如標題欄。 這就是它如何獲取選項卡來替換窗口的標題欄,就像Microsoft Office在文檔窗口的標題區域中放置其“珍珠”和快速訪問工具欄一樣。

要在WPF中執行類似的操作,您可能會發現本文很有用: http//blogs.msdn.com/b/wpfsdk/archive/2008/09/08/custom-window-chrome-in-wpf.aspx

請記住,每當您重新實現標准的Windows chrome時,您將不得不處理Windows通常對您透明的一些內容,例如調整大小,最小化,最大化,移動和關閉窗口。

值得考慮的是,Google Chrome和Microsoft Office應用程序(以及其他應用程序)的行為會有所不同,具體取決於Aero Glass和桌面窗口管理器(DWM)是否存在/啟用。 當缺少這些東西時,您將不得不確保應用程序正常降級。 我建議您確保在投入所需的時間和精力在應用程序中執行此類操作之前,確實可以為用戶提供必要且有益的令人信服的案例。

Chrome似乎在標題欄區域的有限區域內繪制標簽。 當打開足夠的選項卡時,現有選項卡控件的寬度會減小,以便為新選項卡騰出空間。

我建議您通過在適當大小的矩形中繪制標簽來采用類似的策略,該矩形與標題按鈕(最小化,最大化關閉)不相交,並在區域變滿時減小現有標簽標題的寬度

[ 更新1 ]

雖然我沒有看到你的代碼,但我建議這是因為標題頁(標題欄區域中顯示的部分)和標簽頁(覆蓋大部分屏幕的部分)是同一控件的一部分,作為一個單元繪制,所以當你嘗試在區域中繪制標題時,標簽內容也會重新繪制。

如果是這種情況,則需要將選項卡標題和內容頁面繪制為單獨的控件,並在選項卡中保留一些狀態,指示選擇選項卡時哪個選項卡頁應該可見。

暫無
暫無

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

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