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

歡迎訪問 生活随笔!

生活随笔

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

asp.net

WPF之命名空间和资源

發布時間:2024/8/26 asp.net 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WPF之命名空间和资源 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.參考:

https://msdn.microsoft.com/zh-cn/library/ms747086(v=vs.110).aspx

http://www.cnblogs.com/cww2010/archive/2012/04/30/2476844.html(系統命名空間中的兩個參考)

?

2.默認命名空間

2.1創建一個WPF應用,默認生成代碼:

1 <Window x:Class="WpfApplication1.MainWindow" 2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 4 Title="MainWindow" Height="350" Width="525"> 5 <Grid> 6 7 </Grid> 8 </Window>

第一個聲明將整個 WPF 客戶端/框架 XAML 命名空間映射為默認命名空間,包含了所有WPF類,包括用來構建用戶界面的控件。該名稱空間的聲明沒有使用名稱空間前綴,所以它稱為整個文檔的默認名稱空間,除非另行指明,否則每個元素自動位于這個名稱空間:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

第二個聲明映射一個單獨的 XAML 命名空間,通常將其映射到?x:?前綴。它包含了各種XAML實用特性,這些特性可影響文檔的解釋方式:

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

?

命名空間的語法格式:xmlns[:可選的映射前綴]="名稱空間"

xmlns后可以跟一個可選的映射前綴,之間用冒號分隔,如果沒有寫可選映射前綴,則意味著所有來自這個命名空間的標簽都不用加前綴,該命名空間稱作“默認命名空間”,默認命名空間只能有一個。

?

2.2系統命名空間:

1 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

?xml交互性的命名空間,指明哪些需要處理,哪些可以忽略

?

1 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

設計時相關的命名空間

??

2.3引用自定義類

自定義一個Helper類:

1 namespace WpfApplication.Helpers 2 { 3 public static class PasswordHelper 4 { 5 //代碼塊 6 } 7 }

如果引用的類在同一個Project,只需要添加名字空間:

xmlns:local="clr-namespace:WpfApplication.Helpers"

使用方法:

1 <PasswordBox x:Name="txtPassword" Grid.Row="2" Grid.Column="2" Width="150"
HorizontalAlignment="Left" 2 local:PasswordHelper.Attach="True" 3 local:PasswordHelper.Password="{Binding Password,Mode=TwoWay}"></PasswordBox>

如果引用的類在另外一個Project,則需要說明Assembly和Namespace

1 xmlns:helper="clr-namespace:WpfApplication.Helpers;assembly=WpfApplication"

使用的時候,只需要將local換成helper。

??

3 程序資源?

WPF提供了幾個專門使用資源的類,

3.1可以直接使用資源的名稱訪問資源

方法1:?

1 <Button Grid.Row="1" Name="down"> 2 <Image Source="Images/Tulips.jpg"></Image> 3 </Button>

?

方法2:

1 <Button Grid.Row="0" Name="up" Click="up_Click"> 2 <Image Name="img"></Image> 3 </Button>

?然后在程序中添加資源:?

1 private void up_Click(object sender, RoutedEventArgs e) 2 { 3 img.Source = new BitmapImage(new Uri(@"C:\Users\Public\Pictures\Sample Pictures\Koala.jpg")); 4 }

或者如下(如此可使用相對路徑,但注意反斜杠)?

img.Source = new BitmapImage(new Uri("Images/Koala.jpg",UriKind.Relative));

?再或者?

img.Source = new BitmapImage(new Uri("pack://application:,,,/Images/Koala.jpg"));

?

注意:當使用絕對URI時,可使用指向程序集資源的文件路徑、用于網絡共享的UNC路徑、Web站點URL以及pack URI。如果應用程序不能從期望的位置檢索到資源,就會產生異常。如果URI是使用XAML設置的,那么會在創建頁面時產生異常。

??

3.2位于其他程序集中的資源?

? ? 使用packURI還可以檢索嵌入到另一個庫中的資源(換句話說,在應用程序中使用的DLL程序集中的資源)。這種情況下需要使用以下語法:

pack://application:,,,/AssemblyName;component/ResourceName

?

例如,如果圖像被嵌入到引用的名為ImageLibrary的程序集中,將需要使用如下URI:?

img.Source = new BitmapImage(new Uri("ImageLibrary;component/images/winter.jpg",UriKind.Relative));

?

如果使用強命名的程序集,可使用包含版本和/或公鑰標記的限定程序集引用代替程序集的名稱。使用分號隔離每段信息,并在版本號數字之前添加字母v。下面是一個使用版本號的示例:?

img.Source = new BitmapImage(new Uri("ImageLibrary;v1.25;component/images/winter.jpg",UriKind.Relative));

?

下面的示例同時使用了版本號和公鑰標記:?

img.Source = new BitmapImage(new Uri("ImageLibrary;v1.25;dc642a7f5bd64912;component/images/winter.jpg",UriKind.Relative));

?

?4.綁定

4.1元素到元素的綁定

?

1 <!--元素到元素的綁定:ElementName:指示源元素,Path:指示源元素中的屬性--> 2 <ControlTemplate Background="{Binding ElementName=MainWindow, Path=Background}" />

?

元素到元素的綁定:

關鍵字:Binding

Element:指定的源元素

Path:源元素中的屬性

Mode:綁定模式(單向,雙向)

4.2綁定到非元素的對象?

1 <ControlTemplate Width="{Binding RelativeSource={RelativeSource Mode=TemplatedParent}, Path=Width}" />

Source:該屬性是指向源對象的引用,是提供數據的對象

RelativeSurce:這是引用,使用RelativeSource對象指向源對象。有了這個附加層,可在當前元素(包含綁定表達式的元素)的基礎上構建引用。通常用于編寫控件模版以及數據模版。

DataContext:如果沒有使用Source或RelativeSource屬性指定源,WPF就從當前元素開始在元素樹中向上查找,檢查每個元素的DataContext屬性,并使用第一個非空的DataContext屬性

?

4.2.1使用Source屬性

綁定到作為資源創建的對象

1 <TextBlock Text="{Binding Source={StaticResource CustomFont}, Path=Source}" />

?

4.2.2使用RelativeSource屬性

?

名稱說明
FindAncesstor表達式綁定到父元素
Self表達式綁定到同一元素的另一個屬性上
TemplateParent表達式綁定到應用模版的元素。只有綁定位于控件模版或數據模版內部時,這種模式才能工作

?

4.2.3使用DataContext屬性

轉載于:https://www.cnblogs.com/zzw1986/p/7441237.html

總結

以上是生活随笔為你收集整理的WPF之命名空间和资源的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国产亚洲精品久久久久久青梅 | 久久国产精品系列 | 久久婷婷丁香 | 亚洲一区二区免费 | 97伦伦午夜电影理伦片 | 亚洲av少妇一区二区在线观看 | 久啪视频 | 碰在线视频 | 国产成人精品一区二三区 | 男人av网 | 成年人看的视频网站 | 久久这里只有精品99 | 婷婷伊人五月 | 奇米婷婷 | 男人插女人免费视频 | av在线播放地址 | 丰满少妇大力进入 | 午夜影视免费 | 国产午夜久久 | 丝袜理论片在线观看 | 色久视频| 日韩高清在线观看一区 | 国产日产精品一区 | 欧美日韩精品电影 | 好吊妞视频这里只有精品 | 色偷偷综合网 | 在线免费亚洲 | 中国性xxx| 欧美伦理一区二区三区 | 日韩亚洲欧美精品 | 亚洲天堂网络 | 91麻豆一区二区三区 | 精品一区二区久久久 | 成人国产av一区二区三区 | 野外(巨肉高h)| 五月婷婷七月丁香 | 日韩网站免费观看高清 | 国产精品二区三区 | 国产乱叫456在线 | 伊人久久中文字幕 | 亚洲91久久 | 黄色一区二区视频 | 国产一二区在线观看 | 欧美日韩国产在线 | 色视频免费观看 | 短裙公车被强好爽h吃奶视频 | www.成年人| 男人插入女人下面的视频 | 亚洲一区二区三区在线视频 | 兔费看少妇性l交大片免费 日韩高清不卡 | 91黄视频在线观看 | 国产思思99re99在线观看 | 色偷偷在线观看 | 禁果av一区二区三区 | 久久精品无码一区二区三区毛片 | 五月婷色 | 亚洲中文字幕无码不卡电影 | 成人做爰www免费看视频网站 | 男女国产精品 | 日本做爰高潮又黄又爽 | 亚洲欧美另类日韩 | 户外少妇对白啪啪野战 | 日韩中文字幕电影 | 欧美成人黄 | 免费观看高清在线 | 欧美一级片一区二区 | 一本大道熟女人妻中文字幕在线 | 经典三级视频 | 91精品国产91久久久久久吃药 | 欧美操操操 | 亚洲美女一区 | 久久五月激情 | 91精品国产91久久久久久吃药 | 草视频在线观看 | 一级毛片基地 | 亚洲av无码一区二区乱子伦 | 亚洲成人一二三 | 少妇按摩一区二区三区 | 成人网址在线观看 | 亚洲国产精品无码久久久 | 777777av| 国产精品一区二区久久毛片 | 一级日韩毛片 | 亚洲欧美高清视频 | 久久久久久免费 | 国产一区二区在线观看视频 | 毛片在线免费观看网址 | 日韩欧美手机在线 | 国产性生活片 | 亚洲黄在线| 深夜福利网站 | 欧美一级黄| 成人午夜视频免费观看 | 黄色大全在线观看 | 日韩美女免费视频 | 亚洲激情在线观看视频 | 国产午夜精品免费一区二区三区视频 | 欧美猛男gaygay| 中文字幕在线观看线人 |