1 / 5
文档名称:

silverlight入门应知十件事.doc

格式:doc   大小:189KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

silverlight入门应知十件事.doc

上传人:wxc6688 2022/7/29 文件大小:189 KB

下载得到文件列表

silverlight入门应知十件事.doc

相关文档

文档介绍

文档介绍:
Blend工具;



(比如MVVM或其他类似模式);


):怎样实现数据绑定
一个数据绑定可以通过 Binding 对象来描述,其中包含数据源,要绑定的属性路径(Path),目标,目标属性等。
其中目标属性必须是依赖属性(DependencyProperty)。
为了说明方便,首先定义一个数据类:
public class Person
{
public int Age { get; set; }
public string Name { get; set; }
}
例子1:
<ListBox x:Name="list1">

</ListBox>
 
public partial class Page : UserControl
{
public Page()
{
InitializeComponent();
var persons = new List<Person>();
for(var i=0; i< 5; i++)
{
(new Person {Name = "Person " + (), Age = 20 + i});
}
= persons;
}
}
这里仅指定了 list1 的 DataContext 属性,运行后发现页面没有显示。
如果在页面里改一改:
<ListBox x:Name="list1" ItemsSource="{Binding}">

</ListBox>
会发现绑定成功。但是数据项显示为默认的 Person 对象 ToString() 后的表示,不太友好。如下图:
或者,也可以将后台代码改成:
= persons;
而页面 markup 仍然是:
<ListBox x:Name="list1">

</ListBox>
这样也能绑定成功。
这里的原因在于:ListBox 通过 ItemsSource 里的数据去填充数据项,所以直接给这个属性赋值是可以的。
或者,通过空绑定语法 {Binding},指定 ItemsSource 属性绑定为数据源的对象本身(未指定绑定路径)。而数据源就是通过 DataContext 获得的,并且这个属性的数据可以从父对象继承下来。
下面给 ListBox 指定列表项的数据模板,让它显示的好看一点:
<ListBox x:Na