温故而知新:silverlight中的图片资源绑定
时间:2022-04-23
本文章向大家介绍温故而知新:silverlight中的图片资源绑定,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
先来看xaml部分
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="ListBoxSilde.UserControl1">
<Grid x:Name="LayoutRoot">
<Image Source="{Binding Image}" Stretch="None" x:Name="img"></Image>
</Grid>
</UserControl>
cs部分:
using System.Windows.Controls;
namespace ListBoxSilde
{
public partial class UserControl1 : UserControl
{
Test t;
public UserControl1()
{
InitializeComponent();
t = new Test() { Image = "http://images.24city.com/jimmy/ListBoxSildeShow/img/001.jpg" };
img.DataContext = t;
}
}
public class Test { public string Image { set; get; } }
}
代码很简单,就是将一个类的字符串属性绑定到图片的Source
1.绝对路径
可以看到,绑定一个Url到图片是很容易的,用绝对路径即可
2.相对路径
如果不想用绝对路径,也可以采用相对路径,比如把
t = new Test() { Image = "http://images.24city.com/jimmy/ListBoxSildeShow/img/001.jpg" };
改成
t = new Test() { Image = "001.jpg" };
但是要注意的是,运行时请务必确保"001.jpg"与最终的xap文件要放在同一目录中,如果图片很多,您要是觉得放在一起很杂乱,也可以写成
t = new Test() { Image = "img/001.jpg" };
这样的前提是xap所在目录下,必须新建一个img目录,然后把001.jpg放在img目录中
3.资源引用方式
这种方式的前提是图片必须设置为资源,直接打包进xap中,引用的格式为"/程序集;component/图片的资源路径" (不知道如何将图片打包成资源的,可以参考蓝色上的这篇贴子http://bbs.blueidea.com/thread-2941697-1-1.html)
比如:/ListBoxSilde;component/img/002.jpg,如果您不清楚程序集的名称(或不想在代码里写死,也可以用反射的方法得到程序集名称),参考下面的代码:
string asmName = System.Reflection.Assembly.GetExecutingAssembly().FullName.Split(',')[0];
t = new Test() { Image = "/" + asmName + ";component/img/002.jpg" };
- 11g rac配置scan ip(r6笔记第30天)
- 【C++概念】---vector用法
- 浅谈Orabbix监控指标(r6笔记第27天)
- Orabbix定制监控Oracle的简单配置(r6笔记第26天)
- 【java基础】 线程实例
- 记一次数据库的分析和优化建议(r6笔记第24天)
- linux (ubantu)安装最新版python3.6,以及直接安装anaconda
- 【java基础】匿名类
- 朴素贝叶斯法 2016年11月11日
- 11g中关于控制文件自动备份的改进(r6笔记第22天)
- Java基础(02)-15总结对象数组,集合Collection,集合List
- alert日志中的两种ORA错误分析(r6笔记第21天)
- 通过定制orabbix监控分析潜在的Oracle问题 (r6笔记第32天)
- 【C语言练手】C语言画太极图
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 国密SSL协议之性能测试
- 发现一个好看的手机壁纸网站,撸代码的手已经饥渴难耐了
- 还在为怎么学习Android苦恼?看完学会这些大牛资料,2年高级3年资深不是问题!
- 面试心得:一个BAT大厂面试者整理的Android面试题目,五轮面试后终于拿到Offer!
- 【Lighthouse教程】scrapy爬虫初探
- python 手把手教你基于搜索引擎实现文章查重
- Intellij IDEA 如何自动生成 serialVersionUID
- Spring事务是如何应用到你的业务场景中的?
- BFE.dev前端刷题#9. 解密消息 (Facebook面试题)
- JUnit 5 测试问题 must be static unless the test class is
- Intellij IDEA 如何自动生成 serialVersionUID
- 图解面试题:SQL存储过程有什么用?
- LeetCode-6.Z 字形变换 - 消费补偿算法
- python + redis 实现 分布式队列任务
- Git error: hint: Updates were rejected because the remote contains work that you do hint: not have l