天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

將WPF UI單元復(fù)制到剪貼板

  大家在日常工作中應(yīng)該遇到過這樣的問題:需要對應(yīng)用程序界面進(jìn)行截屏操作,然后將截屏內(nèi)容拷貝到其他文檔中使用。通常情況下我們會使用一些截屏軟件或者“Ctrl+PrtSc ”,本篇將介紹如何在WPF 程序中將UI 單元直接以圖片形式復(fù)制到剪貼板,以達(dá)到為應(yīng)用程序界面制作快照(Snapshot)的功能。

  以我之前做過的一個“WPF 員工卡”的文章為例。首先,要為程序添加一個自定義命令(Command):CopyUI。該命令的快捷鍵方式為“Ctrl+U”,在命令中定義兩種事件CanExecute、Executed。關(guān)于自定義命令可以參考這里。

<Window.Resources>
<
Storyboard x:Key="flashClose">
... ...

</
Storyboard>
<
RoutedUICommand x:Key="CopyUI" Text="Copy WPF UI as Image" />
</
Window.Resources>
<
Window.InputBindings>
<
KeyBinding Modifiers="Ctrl" Key="U" Command="{StaticResource CopyUI}"/>
</
Window.InputBindings>
<
Window.CommandBindings>
<
CommandBinding Command="{StaticResource CopyUI}"
CanExecute="CommandBinding_CanExecute"
Executed="CommandBinding_Executed"/>
</
Window.CommandBindings>

  完成命令的定義后,就可以為它們添油加醋了。

private void CommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = true;
}

private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
CopyUIElementToClipboard(this.empCard);
}

  到這里有些朋友可能已經(jīng)發(fā)現(xiàn)CommandBinding_Executed 事件里CopyUIElementToClipboard 方法才是關(guān)鍵部分。empCard 是員工卡整體UI 結(jié)構(gòu)。通過CopyUIElementToClipboard 將WPF UI 單元繪制成圖片并復(fù)制到剪貼板中,如下代碼:

public static void CopyUIElementToClipboard(FrameworkElement ui)
{
double width = ui.ActualWidth;
double height = ui.ActualHeight;
RenderTargetBitmap bmp = new RenderTargetBitmap((int)Math.Round(width),
(int)Math.Round(height), 96, 96, PixelFormats.Default);
DrawingVisual dv = new DrawingVisual();
using (DrawingContext dc = dv.RenderOpen())
{
VisualBrush vb = new VisualBrush(ui);
dc.DrawRectangle(vb, null,
new Rect(new Point(), new Size(width, height)));
}
bmp.Render(dv);
Clipboard.SetImage(bmp);
}

  接下來運(yùn)行程序,按“Ctrl+U” 對UI 進(jìn)行復(fù)制。

image

  “Ctrl+V” 到Word 后的效果,這樣就可以比較方便的復(fù)制UI 結(jié)構(gòu),當(dāng)然也可以復(fù)制程序中生成的柱狀圖,放到PPT中做為報告使用。

image

NET技術(shù)將WPF UI單元復(fù)制到剪貼板,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 2022精品福利在线小视频 | 永久免费看mv网站入口 | 国产免费麻传媒精品国产AV | 精品丰满人妻无套内射 | 一本色道久久88综合日韩精品 | 欲香欲色天天天综合和网 | 国产精品一区二区激情 | 双腿被绑成M型调教PLAY照片 | 亚洲国语在线视频手机在线 | 久久影院毛片一区二区 | 久久99精品国产99久久6男男 | 羞羞漫画视频 | 永久久久免费人妻精品 | 在线不卡日本v二区到六区 在线不卡日本v二区 | 亚洲精品成人在线 | 97超碰97资源在线观看 | 野花韩国高清完整版在线观看5 | 国产免国产免费 | 老色哥网站 | 国产精品无码亚洲网 | 亚洲黄色三级视频 | 久久免费看少妇级毛片蜜臀 | 失禁h啪肉尿出来高h | 欧美互交人妖247 | 无码人妻99久久密AV | 亚洲精品青青草原avav久久qv | 99久视频只有精品2019 | 秋霞伦理手机在线看片 | 國産麻豆AVMDMD0179 | videosgrati欧美另类 | 果冻传媒AV精品一区 | 全是肉的高h短篇列车 | 护士喂我吃乳液我脱她内裤 | 欧美成人一区二免费视频 | 成在线人免费视频 | 又色又爽又黄gif动态视频 | 蜜臀AV中文字幕熟女人妻 | 国产精品久久婷婷五月色 | 人人模人人干 | 免费国产黄线在线播放 | 亚洲AV国产精品无码精 |