成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

WPF全屏幕窗口創建方法介紹

開發 開發工具
當我們想在開發程序中創建一個WPF全屏幕窗口的時候,需要做一些什么操作呢?在這篇文章中我們就為大家詳細介紹了相關應用技巧。

WPF全屏幕窗口在實際使用中是一個比較常見的應用方法。如何才能快速簡單的實現這一功能,是一個初級開發人員必須掌握的技巧。#t#

WPF中用XAML創建WPF全屏幕窗口非常簡單,只需要簡單地設置Window元素的一些屬性即可:

 

  1. < Window x:Class=
    "WindowsApp.Window1" 
  2. xmlns="http://schemas.
    microsoft.com/winfx/2006/
    xaml/presentation"
     
  3. xmlns:x="http://schemas.
    microsoft.com/winfx/2006/xaml"
     
  4. WindowState="Maximized" 
  5. Topmost="True"   
  6. WindowStyle="None" 
  7. AllowsTransparency="true" 
  8. > 
  9. < Grid> 
  10. < !--忽略建立動畫的代碼-->   
  11. < /Grid> 
  12. < /Window> 

 

 

最后程序的運行結果卻出乎所料,在調用Storyboard.Begin之前,一切都很正常,但是一旦啟動動畫,程序運行及很慢,鼠標的運動很慢很慢。有興趣的朋友可以自己嘗試一下。

 

如果把窗口Style稍微修改,問題就得到了解決,把WindowStyle的None修改為其它的值似乎都可以正常運行。動畫的效率得到了極大的提高。

 

但是我們要的就是WPF全屏幕窗口,那怎么辦呢?時間比較緊急,咱就曲線救國繞過去吧!在XAML的Window屬性中WindowStyle保留其默認值,在窗口的加載響應函數里直接用了Win32 API函數來修改窗口的Style。現在可以幾乎可以肯定這不像是正統的方法,或者還有其它的還沒有了解的知識。修改后的代碼如下:

 

 

  1. < Window x:Class="WindowsApp.
    Window1"
     
  2. xmlns="http://schemas.
    microsoft.com/winfx/2006/
    xaml/presentation"
     
  3. xmlns:x="http://schemas.
    microsoft.com/winfx/2006/xaml"
     
  4. WindowState="Maximized" 
  5. Topmost="True"   
  6. Loaded="OnMainLoad" 
  7. > 
  8. < Grid> 
  9. < !--忽略建立動畫的代碼-->   
  10. < /Grid> 
  11. < /Window> 
  12. private void OnMainLoad
    (object sender, Routed
    EventArgs e)  
  13. {  
  14. int nStyle = Win32API.
    GetWindowLong(new WindowInterop
    Helper(this).Handle;,Win32API.
    GWL_STYLE);  
  15. nStyle &= ~Win32API.WS_CAPTION;  
  16. Win32API.SetWindowLong
    (new WindowInteropHelper(this).
    Handle;, Win32API.GWL_STYLE, nStyle);  
  17. }  
  18. public class Win32API  
  19. {  
  20. [DllImport("user32.dll")]  
  21. public static extern int 
    SetWindowLong(IntPtr hWnd, 
    int nIndex, int New);  
  22. [DllImport("user32.dll")]  
  23. public static extern int 
    GetWindowLong(IntPtr hWnd, 
    int nIndex);   
  24. }  
  25. public const int GWL_STYLE = -16;  
  26. public const int GWL_EXSTYLE = -20;   
  27. public const int WS_CAPTION = 
    0x00C00000

 

 

WPF全屏幕窗口的創建代碼中使用的WindowInteropHelper類將在后續的隨筆中介紹。至于用C#調用Win32 API函數應該不需要進一步的介紹,不熟悉C#的朋友可以參考MSDN中的Interoperability相關內容

責任編輯:曹凱 來源: 博客園
相關推薦

2009-07-16 16:09:51

Swing全屏幕模式

2013-07-03 13:54:26

jQuery

2009-12-24 15:22:10

WPF繼承自定義窗口

2009-12-23 14:19:07

WPF單向綁定

2009-12-28 15:39:33

WPF滑動條

2017-08-11 19:02:21

Android全屏幕適配

2018-05-04 15:26:10

Android開發全屏幕

2009-12-28 15:48:14

WPF窗口顏色

2009-11-10 14:52:13

VB.NET實現

2009-12-25 10:05:06

WPF資源

2009-12-24 14:18:57

WPF類型轉換

2009-12-23 18:06:25

WPF模板

2010-01-26 17:36:17

Android實現全屏

2009-12-28 15:08:12

WPF字體

2009-12-28 11:14:29

WPF顯示文本

2009-12-25 16:10:31

WPF內存

2009-12-24 16:11:07

WPF圖像處理

2009-12-23 14:49:46

WPF面板

2009-12-25 17:10:51

WPF動態資源

2009-12-28 13:47:35

WPF對話框
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲欧洲日韩精品 中文字幕 | 97视频网站 | 亚洲国产成人一区二区 | 成人欧美一区二区三区白人 | 国产视频中文字幕 | 中文久久| 久草网免费 | 久久午夜精品福利一区二区 | 热re99久久精品国99热观看 | 成人午夜精品 | 久久久久国产一区二区三区四区 | 亚洲日产精品 | 午夜精品一区二区三区在线观看 | 久久久夜 | 国产精品视频免费观看 | 91麻豆精品一区二区三区 | 91一区二区三区在线观看 | 中文字幕av在线一二三区 | av国产精品 | 在线看av网址 | 日本视频中文字幕 | 在线一区观看 | 狠狠综合网 | 国产精品a久久久久 | av电影手机版 | 成人三级视频在线观看 | 精品在线一区 | 久久久久网站 | 又黑又粗又长的欧美一区 | 精品久久香蕉国产线看观看亚洲 | 欧美激情欧美激情在线五月 | 91xxx在线观看| 少妇久久久 | 国产成人一区二区三区久久久 | 久久久久资源 | 成人一级毛片 | 97视频免费| 成人欧美一区二区三区在线播放 | 天天综合久久 | 成人午夜网 | 久久99网|