WPF 精修篇 调用Win32Api

原文:WPF 精修篇 调用Win32Api

栗子是 调用WIn32API 让窗口最前

后台代码


  1. [DllImport("user32.dll")]
  2. private static extern bool SetForegroundWindow(IntPtr hWnd);
  3. //
  4. Process process = null;
  5. private void OPenButton_Click(object sender, RoutedEventArgs e)
  6. {
  7. process = new Process();
  8. process.StartInfo.FileName = "iexplore.exe";
  9. process.StartInfo.Arguments = Text_Path.Text;
  10. process.Start();
  11. }
  12. private void TOPButton_Click(object sender, RoutedEventArgs e)
  13. {
  14. if (process != null)
  15. {
  16. var ptr = process.MainWindowHandle;
  17. SetForegroundWindow(ptr);
  18. }
  19. }
  20. private void FlushButton_Click(object sender, RoutedEventArgs e)
  21. {
  22. if (process != null)
  23. {
  24. var ptr = process.MainWindowHandle;
  25. SetForegroundWindow(ptr);
  26. SendKeys.SendWait("{F5}");
  27. }
  28. }

前台


  1. <Grid>
  2. <TextBox x:Name="Text_Path" HorizontalAlignment="Left" Height="25" Margin="0,34,0,0" TextWrapping="Wrap" Text="https://www.baidu.com" VerticalAlignment="Top" Width="251" />
  3. <Button x:Name="OPenButton" Content="打开" HorizontalAlignment="Left" Margin="10,86,0,0" VerticalAlignment="Top" Width="75" Click="OPenButton_Click"/>
  4. <Button x:Name="TOPButton" Content="前台" HorizontalAlignment="Left" Margin="10,123,0,0" VerticalAlignment="Top" Width="75" Click="TOPButton_Click"/>
  5. <Button x:Name="FlushButton" Content="刷新" HorizontalAlignment="Left" Margin="10,160,0,0" VerticalAlignment="Top" Width="75" Click="FlushButton_Click"/>
  6. </Grid>

SendKeys.SendWait("{F5}"); 需要引用System.Windows.Forms.dll

原文地址:https://www.cnblogs.com/lonelyxmas/p/12075802.html

时间: 2024-07-30 12:33:49

WPF 精修篇 调用Win32Api的相关文章

WPF 精修篇 动画组TransformGroup

原文:WPF 精修篇 动画组TransformGroup 动画分组 TransformGroup 一个元素可能要有缩放 ScaleTransform和移动 TranslateTransform等多个效果组合 就需要分组 RenderTransformOrigin 中心点设置 "0.5,0.5" 为中间 在编辑器中  有设置 <Grid> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Widt

WPF 精修篇 拖拽 DragDrop

原文:WPF 精修篇 拖拽 DragDrop WPF 实现拖拽 效果 <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="197*"/> <ColumnDefinition Width="209*"/> <ColumnDefinition Width="111*"/> </Grid.ColumnDefinitions&g

WPF 精修篇 数据触发器

原文:WPF 精修篇 数据触发器 数据触发器 可以使用Binding 来绑定控件 或者数据源 来触发相关动作 举栗子 <Window.Resources> <Style TargetType="{x:Type Label}"> <Style.Triggers> <DataTrigger Binding="{Binding ElementName=red,Path=IsChecked}" Value="True&qu

WPF 精修篇 依赖属性

原文:WPF 精修篇 依赖属性 依赖属性使用场景 1. 希望可在样式中设置属性. 2. 希望属性支持数据绑定. 3. 希望可使用动态资源引用设置属性. 4. 希望从元素树中的父元素自动继承属性值. 5. 希望属性可进行动画处理. 6. 希望属性系统在属性系统.环境或用户执行的操作或者读取并使用样式更改了属性以前的值时报告. 7. 希望使用已建立的.WPF 进程也使用的元数据约定,例如报告更改属性值时是否要求布局系统重新编写元素的可视化对象. 依赖属性生成 PropertyMetadata 后面可

WPF 精修篇 倾斜 SkewTransform

原文:WPF 精修篇 倾斜 SkewTransform 倾斜 SkewTransform AngleX 倾斜X角度 AngleY 倾斜Y角度 CenterX CenterY 中心点 <StackPanel Orientation="Horizontal"> <Image Source="Image/Dog.jpg" Width="200" Height="200"> <Image.RenderTr

WPF 精修篇 数据绑定到对象

原文:WPF 精修篇 数据绑定到对象 数据绑定到对象 首先 我们需要一个对象 public class Preson { private string name; public string Name { get { return name; } set { name = value; } } private string address; public string Address { get { return address; } set { address = value; } } pri

WPF 精修篇 长时间线程加取消功能

原文:WPF 精修篇 长时间线程加取消功能 <Grid> <Grid.RowDefinitions> <RowDefinition Height="11*"/> <RowDefinition Height="29*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Margin="0"

WPF 精修篇 缩放ScaleTransform

原文:WPF 精修篇 缩放ScaleTransform 缩放 ScaleTransform 参数 ScaleX  X轴缩小值 正常为1 ScaleY Y轴缩小值 正常为1 CenterY ,CenterX  中心点位置 设置中心点 会按照中心点位置 缩小 这里 做效果 一个张图片 左侧设置了 缩小 中心点默认为左上角 右侧设置了中心点为 X Y各为100  在缩小 会发生位置变化  2张图片来显示区别 <Grid> <StackPanel Orientation="Horizo

WPF 精修篇 非UI进程后台更新UI进程

原文:WPF 精修篇 非UI进程后台更新UI进程 <Grid> <Grid.RowDefinitions> <RowDefinition Height="11*"/> <RowDefinition Height="29*"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Margin="0&quo