234

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

ImageSource使用心得

系統(tǒng) 2002 0

很多時(shí)候,我們會(huì)使用圖片來裝飾UI,比如作為控件背景等。

而這些圖片可以分為兩種形式,即存在于本地文件系統(tǒng)中的圖片和存在于內(nèi)存中的圖片

對(duì)于這兩種形式的圖片,在WPF中,使用方法不同,下面主要說明針對(duì)這兩種形式圖片的使用方法

一、存在于本地文件系統(tǒng)中的圖片文件

對(duì)于此類圖片,使用非常簡(jiǎn)單,在xaml中直接指定路徑即可,如:

1 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 <Button>

2 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 ????<Button.Background>

3 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 ????????<ImageBrush?ImageSource="bg.jpg"/>

4 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 ????</Button.Background>

5 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 </Button>

對(duì)應(yīng)的的C#代碼為

1 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 ImageBrush?imageBrush?=?new?ImageBrush();

2 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 imageBrush.ImageSource?=?new?BitmapImage(new?Uri("bg.jpg",?UriKind.Relative));

3 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 button.Background?=?imageBrush;

其中imageBrush.ImageSource的類型為ImageSource,而ImageSource是個(gè)抽象類,

因此我們不能直接使用它,而是使用它的子類來代替,查閱MSDN,可以看到它們的繼承關(guān)系:

System.Windows.Media.ImageSource

???System.Windows.Media.DrawingImage?

??????System.Windows.Media.Imaging.BitmapSource

二、存在于內(nèi)存中的圖片

?對(duì)于只存在于內(nèi)存中的圖片,用以上方法就顯得無能為力了,我們應(yīng)該另尋他法,下面介紹一種方法:

先看代碼:

1 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 //此處圖片從文件中讀入用以模擬內(nèi)存中的圖片

2 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 System.Drawing.Bitmap?bitmap?=?new?System.Drawing.Bitmap("bg.jpg");

3 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 MemoryStream?stream?=?new?MemoryStream();

4 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 bitmap.Save(stream,?System.Drawing.Imaging.ImageFormat.Png);

5 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 ImageBrush?imageBrush?=?new?ImageBrush();

6 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 ImageSourceConverter?imageSourceConverter?=?new?ImageSourceConverter();

7 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客

8 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 imageBrush.ImageSource?=?(ImageSource)imageSourceConverter.ConvertFrom(stream);

9 WPF中的imagesource - 渺兒 - miaoerjyzhu的博客 button.Background?=?imageBrush;

其中bitmap即是存在于內(nèi)存中的Bitmap類型圖片,此處使用直接加載本地圖片文件模擬。

步驟是先將它保存到流中,再使用ImageSourceConverter?類的ConvertFrom方法從流中得到我們需要的圖片

OK,本文到此結(jié)束,以上方法都是自己在使用中探索所得,如果有更好的方法,本人非常愿意和各位交流。

?

原文地址: http://shansun123.iteye.com/blog/587695

ImageSource使用心得


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 萨迦县| 娄底市| 上高县| 马边| 彭水| 洛隆县| 句容市| 平度市| 云和县| 黎平县| 酉阳| 白河县| 江川县| 博白县| 阿拉尔市| 福鼎市| 汝阳县| 钟山县| 鄂温| 泗阳县| 班戈县| 自贡市| 金阳县| 宁远县| 平顺县| 新蔡县| 榆林市| 许昌市| 麻栗坡县| 宜城市| 镇赉县| 葫芦岛市| 叶城县| 昌乐县| 太保市| 容城县| 芒康县| 大同市| 寿宁县| 台安县| 边坝县|