WPF 杂记
1,跨屏最大化
单屏幕的时候我们可以设置 WindowState 来使应用最大化
当接多个屏幕的时候,就需要下面这个设置:
private void FullScreen() { this.WindowState = WindowState.Normal; this.WindowStyle = System.Windows.WindowStyle.None; this.ResizeMode = System.Windows.ResizeMode.NoResize; this.Left = 0; this.Top = 0; this.Width = System.Windows.SystemParameters.VirtualScreenWidth; this.Height = System.Windows.SystemParameters.VirtualScreenHeight; }
或者在 XAML 中
WindowState="Normal" WindowStyle="None" ResizeMode="NoResize" Left="0" Top="0" Height="{x:Static SystemParameters.VirtualScreenHeight}" Width="{x:Static SystemParameters.VirtualScreenWidth}"
来自:http://www.cnblogs.com/infly123/p/3818534.html
2,动画的暂停、继续、停止
在 XAML 中:
<Button Content="Click Me"> <Button.Triggers> <EventTrigger RoutedEvent="FrameworkElement.Loaded"> <BeginStoryboard Name="OpacityStoryboard"> <Storyboard> <DoubleAnimation Storyboard.TargetProperty="(UIElement.Opacity)" From="0" To="1" RepeatBehavior="Forever" AutoReverse="True" /> </Storyboard> </BeginStoryboard> </EventTrigger> <EventTrigger RoutedEvent="UIElement.MouseEnter"> <PauseStoryboard BeginStoryboardName="OpacityStoryboard" /> </EventTrigger> <EventTrigger RoutedEvent="UIElement.MouseLeave"> <ResumeStoryboard BeginStoryboardName="OpacityStoryboard" /> </EventTrigger> </Button.Triggers> </Button>
来自:http://www.cnblogs.com/tommy-huang/p/6496748.html
在后台代码里,可以使用:
Storyboard myStoryboard = new Storyboard(); myStoryboard.Pause(this); myStoryboard.Resume(this);
但你如果要使用以上代码,一定要注意必须设置:
myStoryboard.Begin(this, true);
可以利用 myStoryboard.GetIsPaused(this); 来判断当前动画是否在暂停状态
3,窗体对象的操作:
http://www.cnblogs.com/BABLOVE/p/3234035.html
4,背景透明
AllowsTransparency="True" Background="Transparent" WindowStyle="None"
作者:sun8134
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步