摘要: Silverlight 中 DataGrid 的 RowDetail 默认显示方式有三种:一、Collapsed 及不显示;二、Visible 及一直显示;三、VisibleWhenSelected 及选中行时显示。有时我们想让用户来选择显示或隐藏某行的详细信息,虽然使用 VisibleWhenSelected 模式会在选中一行时显示相应的详细信息,但是当更改选中行时,之前选中行的详细信息就会隐藏,而且选中一行后也无法隐藏详细信息。(SelectionModel 设置为 Extended ,RowDetailsVisibilityMode 设置为 VisibleWhenSelected ,按住阅读全文
posted @ 2011-07-23 00:44 forgetu 阅读(1291) 评论(3) 编辑
摘要: 运行在同一台电脑上的多个 Silverlight 应用程序可以通过本地消息进行通信,通信是在客户端进行的,不需要与服务端交互。使用这一功能可以使在同一页面承载的多个 Silverlight 应用程序之间或不同页面承载的 Silverlight 应用程序之间进行通信,在网页上承载的 Silverlight 应用程序也可以和运行在浏览器外的其他应用程序之间进行通信。要在 Silverlight 应用程序之间的通信,需要建一个信息发送程序和一个信息接收程序,发送端使用 LocalMessageSender 来发送信息,接收端使用 LocalMessageReceiver 来接收信息。信息发送端:创建阅读全文
posted @ 2011-06-30 23:55 forgetu 阅读(1953) 评论(6) 编辑
摘要: Model View ViewModel(MVVM)是在 Silverlight 和 WPF 项目开发中应用最多的结构模式,也是 Silverlight 和 WPF 项目开发的最佳模式。本文的主要目的不是讲解 MVVM 模式,如果您不了解 MVVM 模式,可心参看这里和这里。目前已有很多 MVVM 框架可以用来简化 MVVM 开发,如 Prism、SilverlightFX、MvvmLight、Caliburn、Simple MVVM Toolkit等。在程序开发中经常会遇到诸如弹出提示框、确认框、用户输入窗口等的情况,在 Silverlight 中这些情况都可以用子窗体(Child Wind阅读全文
posted @ 2011-06-30 00:02 forgetu 阅读(1451) 评论(4) 编辑
摘要: 绑定动态数据是做 Silverlight 程序时经常会遇到的问题。本文介绍 Silverlight 通过绑定索引器实现绑定动态数据,即在设计时不知道数据的结构,如在设计时不知道要绑定的类有哪些属性。绑定索引器是 Silverlight 4 新增的特性,这一特性使用我们可以在设计时不必知道要绑定的类有哪些属性,但是还可以绑定。下面先看一下如何绑定索引器。<TextBox Grid.Row="0" Height="23" Width="148" HorizontalAlignment="Center" Verti阅读全文
posted @ 2011-06-18 00:13 forgetu 阅读(1155) 评论(5) 编辑
摘要: 泛型是 .NET 2.0 中引入的一个新特性,从 .NET 2.0 发布到现在已经过去好多年的时间了,到现在很多公司在面试时都喜欢问诸如用过泛型吗、什么是泛型、怎么写泛型之类的问题。似乎泛型是什么高深莫测的绝学了,犹如辟邪剑法一样,一般人难以运用。其实虽然每个 .NET 程序员的具体工作内容不一样,但是对于 .NET 里的一些基本的东西的运用相差不会很大,我想对于学过C# 的刚毕业的学生也不至于没有用过泛型。下面我就简单说一下泛型。泛型将类型参数的概念引入了 .NET 中,类型参数使类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。使用泛型可以最大限度地重用代码、保护阅读全文
posted @ 2011-05-08 15:15 forgetu 阅读(2275) 评论(7) 编辑
摘要: 延迟初始化就是将对象的初始化延迟到第一次使用该对象时。延迟初始化是我们在写程序时经常会遇到的情形,例如创建某一对象时需要花费很大的开销,而这一对象在系统的运行过程中不一定会用到,这时就可以使用延迟初始化,在第一次使用该对象时再对其进行初始化,使用延迟初始化可以提高程序的效率,使程序占用更少的内存。在 .NET 4.0 之前要实现延迟初始化,需要我们自己动手编写具体的实现方式阅读全文
posted @ 2011-05-07 00:32 forgetu 阅读(1537) 评论(5) 编辑
摘要: C# 中所有的数据类型不是值类型就是引用类型。本文就这两种类型在变量定义、赋值、和作为函数参数传递时的不同之外作简单讨论。 值类型是使用对象实际值来表示对象的数据类型。 如果向一个变量分配值类型的实例,则该变量将被赋以该值的全新副本。 引用类型是使用对对象实际值的引用(类似于指针)来表示对象的数据类型。 如果为某个变量分配一个引用类型,则该变量将引用(或指向)原始值。 不创建任何副本。阅读全文
posted @ 2011-05-04 23:44 forgetu 阅读(282) 评论(7) 编辑
摘要: 在上一篇文章中介绍了 Silverlight 中同时选中和移动多个控件的实现方式,但是并没有对控件是否移出边界进行检测,因此可以把控件拖出容器边界外面,这实际应用中当然是不允许的。还有一点就选中的控件只有选中部分会包含在选择区域中,不会把整个控件都自动包含在选择区域中。以下就上面的两个问题的解决方式做一简单介绍。阅读全文
posted @ 2010-09-08 22:33 forgetu 阅读(387) 评论(0) 编辑
摘要: 在设计 WinForm 程序时,我们可以很方便的同时选择窗体上的多个控件来调整控件的位置。在 Silverlight 应用程序中有时我们也想实现同样的功能,以提供更好的用户体验。本文将要介绍的就是在 Silverlight 程序中实现同时选中和移动多个控件。阅读全文
posted @ 2010-09-04 10:40 forgetu 阅读(827) 评论(0) 编辑
摘要: Silverlight 拖动复制控件,就是将控件从一个容器中向另一个容器中拖动时,不是移动控件而把该控件到另一个容器中。这种情形在程序中经常遇到,下面是我做的一个拖动复制控件的示例,仅供有这种需求的朋友们参考。阅读全文
posted @ 2010-08-31 22:48 forgetu 阅读(523) 评论(7) 编辑