RSS 2.0 Feed
Beth Massi的blog

当我开始钻研数据绑定时,在WPF中我最想念的一项功能,是在BindingListCollectionView和我所喜欢的winforms BindingSource之间的一致性功能。BindingListCollectionView就像在winforms下的资源捆绑一样,提供了限制收集数据(或数据表)的导航、流动、过滤和排序。 然而在合集中并不支持处理添加和删除项目。你可以从我的WPF窗体数据录像中注意到,当我从数据中添加或者删除一行时,我只能直接进入数据表进行操作。当我用数据表工作时这不会有问题,因为他们可以做他们自己的处理编辑(连同修改记录)。不过,为了有良好的客户业务集合,实现典型的绑定接口,这通常是一个必要的功能。

posted @ | Feedback (0) | Filed Under [ VB Team Blog Beth Massi的blog ]

最近我在考虑一些关于如何使用LINQ查询XML文档(或片段)中一个特定节点并且改变其值的问题(这说明人们已经开始用这种方法了,这很是让我激动)。这是一个很方便的方法:我们可以改变查询返回节点的值,这样源XML中的值也会跟着改变。 一个例子:

posted @ | Feedback (0) | Filed Under [ VB Team Blog Beth Massi的blog ]

上一节我讲到用XML编写动态WPF UI, 尽管这里的UI是动态生成的,但仍有一处不尽人意的地方,就是我们采用的是一个具体的对象customer(来源于LINQ to SQL classes)。 如果想要我们的应用程序既能够动态生成WPF UI 又能动态地编辑处理数据库里的任何表数据,就需要进一步参数化程序代码 ——而不仅限于customer。 这样只需要修改数据库表的定义而不用更新对象模块和重新编译代码。 实现方法是试图在运行时加载,处理一个简单的无类型的(或者称作通用类型)DataTable,并运用XML literals特性 –为SqlDataAdapter生成SELECT和UPDATE语句。要注意一件事情,这个过程必须依赖数据库验证规则。因此这种方式只能用于处理非常简单的表(缩略语.维护表)。

posted @ | Feedback (0) | Filed Under [ VB Team Blog Beth Massi的blog ]

昨天我从微软的一员工那里收到一封email,内容是关于体验一下他正在设计的一个工具Open XML Diff。 他的名字叫Pranav Wagh。 他也发布了这个工具的一个版本,可以从他的博客上看到。 当你准备写代码去生成一个开放XML文档,而且当你不确定要写的XML语句是什么的时候,你可以使用Open XML Diff。也就是说你知道你想要的文档在Word中是如何呈现的,但是不是很明白怎样去设置某个元素或者属性。你可以保存一个文档的备份,修改并且保存它,然后用此工具比较前后两个文件,就能使你看出你所需要的XML语法。

posted @ | Feedback (0) | Filed Under [ VB Team Blog Beth Massi的blog ]

你可能从我之前的那几篇文章中看出,我最近在研究WPF中的不同的数据案例。昨天我在摆弄WPF和.net 3.5中的数据有效性验证,而WPF和.net 3.5一起工作的非常好。在这篇文章中,我将从头到尾过一遍如何通过使用IDataErrorInfo 接口来触发你自己的数据对象中有效性验证,然后再介绍一些你能用来显示给用户的有效性验证错误信息的验证错误信息模板。

posted @ | Feedback (0) | Filed Under [ Beth Massi的blog ]

上个月我在Redmond的时候向一个同事提起过我真的非常欣赏Office 2007正在应用的Open XML的格式(Opem XML 是继如doc、.dot、.xls 和 .ppt等二进制 文件后一种全新的office文件格式)和我是如何应用这种格式及”LINQ toXML” 的.他也向我介绍了VSTO Power Tools,这个工具包含了称作Open XML Package Editor 的Visual Studio 插件。 这个工具可以让用户通过简洁小巧的树状菜单在Word,PowerPoint和Excel中浏览Office2007 文档,这可以使得用户操纵Open XML 文件和XML中的其它各个部分。在安装了VSTO Power Tools 后, 只要从Visual Studio项目中直接双击Office 2007 文件打开这个工具就可以使用了。

posted @ | Feedback (0) | Filed Under [ Beth Massi的blog ]

  前面的博客中演示了两种不同情况下如何运用Combobox Data Binding组件和LINQ to SQL对象。(分别可见Linq1和Linq2.)今天我将继续讲解怎样创建一对多关系的winform表单(同时还将用到2个combobox lookup list),我还会展示怎样正确的插入、更新和删除Hierarchical Data, 以及怎样利用存储过程实现上述操作。

posted @ | Feedback (0) | Filed Under [ Beth Massi的blog ]

在我以前的TableAdapters and Transactions文章中,我展示了一套关于如何在多层数据表结构的数据集中完成事务内部的分等级更新。我在这里给出的例子演示了Visual Studio 2005中如何用数据库事务或者TransactionScope去更新数据。这需要一些代码来管理行的正确更新顺序,TableAdapters上的连接和处理,以及在回滚的情况下,你希望保持数据集中原有的变化。 幸运的是,在Visual Studio 2008中DataSet生成器有了新的提高,它创建了一个新的类通过只有几行代码自动处理所有这些事情!进入TableAdapterManager。

posted @ | Feedback (2) | Filed Under [ Beth Massi的blog ]

利用VB9和Linq,你可以很容易地从多个数据源之间创建XML文件,这些数据源包括关系型数据、 XML文件和其它任何可查询对象,因为绝大多数流行的系统之间的交互都是以XML的格式进行的,所以应用是很广泛的。在VB9中SOAP,XAML,HTML,RSS都能够很容易地通过Linq To XML创建。比如, 如果我们想在一个VE生成的地图中显示所有Northwind库中的Customers信息,我们需要怎么做?

posted @ | Feedback (0) | Filed Under [ Beth Massi的blog ]

Full Beth Massi的blog Archive