rssRSSlotinLogin
  • WPF中AllowsTransparency为true的代价
  • constriction
  • Author:zhouwenqi
  • Date:2008-8-5 12:20:01
  •   要做完全自定UI的效果,根本上讲首先要定制窗体(Window)的效果,但重绘窗体比重绘其它控件要复杂的多,尤其是做很炫的(防Vista)效果时,可能就要用到AllowsTransparency属性,这个属性,可以让,窗体背景透明,这样可以做出很多很炫的效果出来,例如MSDN上就提到过做不规则窗体效果就要用到AllowsTransparency!

    示例
    <Window x:Class="WQrss.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
    AllowsTransparency="True" WindowStyle="None">
    ...
    </Window> 

      但将AllowsTransparency设为true也是要付出代价的,首先做了这个动作之后,程序变得明显的缓慢,如果你把效果再玩的炫一点,就明显感到有延迟,而严重的是,如果在窗体中使用子窗体例如:Frame或WindowsFormsHost控件,子窗体将显示一片空白(其实是透明了,内容还是正在的),很多人都将这个缺陷视为WPF的Bug,听说Vista中的SP1已经做了优化,而且在.NET3.5SP1中增加了WebBrowser控件,希望能解决这些问题!

  • Tags:AllowsTransparencywpf
  • comments
  • constriction
Copyright © 2005-2009 Wenqi blog All Rights Reserved.
logo