【发布时间】:2014-05-09 01:04:10
【问题描述】:
我正在创建一个应用程序,它可以捕获当前活动窗口窗体选择的屏幕,并通过将其设置为背景来让用户知道。请参考图片
但我的问题是我无法获得活动窗口大小的大小。这是我一直在处理的代码
private void button5_Click(object sender, RoutedEventArgs e)
{
Image b = null;
int w = (int)this.Width;
int h = (int)this.Height;
**System.Drawing.Size sz = this.Size;
System.Drawing.Point loc = this.Location;**
Hide();
System.Threading.Thread.Sleep(500);
using (b = new Bitmap(w, h))
{
using (Graphics g = Graphics.FromImage(b))
{
g.CopyFromScreen(loc, new System.Drawing.Point(0, 0), sz);
}
Image x = new Bitmap(b);
ImageBrush myBrush = new ImageBrush();
x.Save(@"C:\Users\DZN\Desktop\testBMP.jpeg", ImageFormat.Jpeg);
myBrush.ImageSource = new BitmapImage(new Uri(@"C:\Users\DZN\Desktop\testBMP.jpeg", UriKind.Absolute));
this.Background = myBrush;
}
Show();
}
在粗体行中,我收到错误消息说 WpfApplication1.MainWindow' 不包含“大小,位置”的定义。但这在 Windows 窗体中效果很好。非常感谢任何帮助。谢谢你。
【问题讨论】:
-
你添加了
System.Drawing参考吗? -
当您使用 WPF 而不是 WinForms 时,为什么您的屏幕截图和文本是“表单”?
-
我已经提到过先生。我可以以胜利的形式做到这一点。但在 WPF 中我有一个问题
标签: c# wpf screen-capture