日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

WPF实例秀——如何获取UI元素的图像

發布時間:2023/12/20 asp.net 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WPF实例秀——如何获取UI元素的图像 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這個標題還真難說明白,我還是再解釋一下吧。 比如我想在UI上拖拽某個元素,拖拽過程中,我需要讓這個UI元素的影相跟著鼠標移動(但UI還停留在原位),當放開鼠標的時候,UI元素移動到新的位置。 這是個很常見的需求,實現這個需求的第一步就是獲取這個UI元素的影相。實現這一步其實很簡單,核心就是使用VisualBrush這個畫刷子類。 下面我給出一個簡單的例子。 這是UI描述,
  • <Window?x:Class="WpfApplicationImage.Window1"
  • ????xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  • ????xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  • ????Title="Window1"?Height="300"?Width="400"?Background="SteelBlue">
  • ????<Grid?Margin="10">
  • ????????<Grid.ColumnDefinitions>
  • ????????????<ColumnDefinition?Width="160"/>
  • ????????????<ColumnDefinition?Width="*"/>
  • ????????????<ColumnDefinition?Width="160"/>
  • ????????</Grid.ColumnDefinitions>
  • ????????<StackPanel?x:Name="stackPanelLeft"?Background="White">
  • ????????????<Button?x:Name="btn"?Content="OK"?Height="40"/>
  • ????????</StackPanel>
  • ????????<Button?Content=">>>"?Grid.Column="1"?Margin="5"?Click="Button_Click"/>
  • ????????<StackPanel?x:Name="stackPanelRight"?Background="White"?Grid.Column="2"/>
  • ????</Grid>
  • </Window>
  • UI效果是這樣的 點擊中間的Button,會把左邊StackPanel中Button的影像加入到右邊的StackPanel中。代碼如下(核心是使用VisualBrush):
  • ????????private?void?Button_Click(object?sender,?RoutedEventArgs?e)
  • ????????{
  • ????????????VisualBrush?vbrush?=?new?VisualBrush(btn);
  • ????????????Rectangle?rect?=?new?Rectangle();
  • ????????????rect.Width?=?btn.Width;
  • ????????????rect.Height?=?btn.Height;
  • ????????????rect.Fill?=?vbrush;
  • ????????????rect.Opacity?=?0.5;?//為了表示是影像,我讓不透明度為50%
  • ????????????this.stackPanelRight.Children.Add(rect);
  • ????????}
  • 點擊幾下后,結果如下圖: 核心問題解決了,剩下的就好辦了。如果想做出拖拽等效果,只是些使用Mouse事件和計算偏移量的小技倆了:p ==================================== 我寫了一個完整的例子,上傳到資源里了,可惜不知道為什么顯示不出來。名字叫“WPF拖拽效果源代碼”。等我自己能看見了,就把鏈接貼過來~~~ 放個截圖先~~~~



    本文轉自 水之真諦 51CTO博客,原文鏈接:http://blog.51cto.com/liutiemeng/121351,如需轉載請自行聯系原作者

    總結

    以上是生活随笔為你收集整理的WPF实例秀——如何获取UI元素的图像的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。