如何在Silverlight 3数据网格中定位字段?

如何在Silverlight 3数据网格中定位字段?,silverlight,validation,silverlight-3.0,datagrid,Silverlight,Validation,Silverlight 3.0,Datagrid,我需要在Silverlight 3数据网格中找到一个单元格/列,以便对其调用UpdateSource。我该怎么做 如果您感兴趣,这就是原因: 我在Silverlight 3应用程序中有一个DataGrid,它显示用DataAnnotations属性(如[Required])修饰的对象,以进行验证。我正在从导入的CSV文件填充DataGrid。导入的行将无效,因为CSV不包含所有必需的字段 如果用户编辑datagrid中的字段,或者当我调用submit(这是一个WCF RIA服务应用程序)时,验证

我需要在Silverlight 3数据网格中找到一个单元格/列,以便对其调用UpdateSource。我该怎么做

如果您感兴趣,这就是原因:

我在Silverlight 3应用程序中有一个DataGrid,它显示用DataAnnotations属性(如[Required])修饰的对象,以进行验证。我正在从导入的CSV文件填充DataGrid。导入的行将无效,因为CSV不包含所有必需的字段

如果用户编辑datagrid中的字段,或者当我调用submit(这是一个WCF RIA服务应用程序)时,验证工作正常。我想做的是在加载datagrid后立即触发验证。从大量的阅读来看,似乎没有内置的方法来做到这一点


我想如果我能在datagrid的第一行找到字段并调用UpdateSource(),我会触发一个验证错误。如何导航到手动定义的数据网格?

您尝试过使用FindName(“名称”)吗


您是否尝试过使用FindName(“名称”)


DataGridFieldName.Items允许您访问绑定到DataGrid的对象。 您可以通过手动调用Validator.ValidateObject来触发对此项的验证

var firstRowOfDataGrid=dataGrid.Items[0]
ValidationContext ValidationContext=新的ValidationContext(firstRowOfDataGrid,null,null)
Validator.ValidateObject(这是validationContext)

我不知道这是否解决了你的问题,但值得一试

MSDN上的验证程序

DataGridFieldName.Items允许您访问绑定到DataGrid的对象。 您可以通过手动调用Validator.ValidateObject来触发对此项的验证

var firstRowOfDataGrid=dataGrid.Items[0]
ValidationContext ValidationContext=新的ValidationContext(firstRowOfDataGrid,null,null)
Validator.ValidateObject(这是validationContext)

我不知道这是否解决了你的问题,但值得一试

MSDN上的验证程序

您是否尝试过:

您是否尝试过:


不,那不行。我已经在DataGrid和特定行上尝试过了,但在这两种情况下都返回null。不,这不起作用。我在DataGrid和一个特定的行上尝试过它,但在这两种情况下它都返回null。什么是DataGridFieldName?我在MSDN上找不到它。DataGridFieldName是什么?我在MSDN上找不到它。