在一个项目中, 发现有的项目引用的动态库是一个网页地址,下面就看看这个网页地址怎么来的。

目标:新建一个WPF工程,实现一个用户控件的功能。在 工程中加入一个类库,然后在类库中增加一个用户控件页面,在主界面中调用用户控件,显示用户控件的内容。

1. 新建一个工程WPFStyle,增加一个类库Common, 在类库中增加一个用户控件的页面,在页面中放入一张图片。如下如所示:

WPF知识总结(一)-LMLPHP

2. 在他的 AssemblyInfo.cs 文件最下面  加入代码[assembly: XmlnsDefinition("http://www.baoyi.com", "Common")]

这句话的意思就是将当前的Common.dll 动态库加入了http://www.baoyi.com 网址里面,如果 Common 下面有文件夹 需要继续加入代码

[assembly: XmlnsDefinition("http://www.baoyi.com", "Common.PrintTemple")] 等等。

3. 在MainWindow 中加入引用后需要加入一行代码 xmlns:dd="http://www.baoyi.com" 这样后面的 的用户控件就可也以用<dd:ShowImage> 了

<dd:ShowImage Name="img"
Height="127"
Margin="25,12,352,0"
VerticalAlignment="Top" />

4. 到此就结束了。

5. WPF 中Image 赋值,Image它接收的不是一个path字符串,而是一个ImageSource 对象 ,所以需要用BitmapImage 这个对象去处理他,

img.ImgSource = new BitmapImage(new Uri("/WPFStyle;component/Images/wp_ss_20151024_0010.png",UriKind.RelativeOrAbsolute));

如上代码,需要注意的是URL对象中如果传路径,必须是绝对路径,如果不是绝对路径,必须用 UriKind.RelativeOrAbsolute 指明,或者UriKind.Relative。

05-08 07:59