【发布时间】:2012-12-20 15:01:42
【问题描述】:
我正在将带有 VB.NET 代码隐藏的网站转换为 C#。我遇到的唯一真正问题是在 RowSelectionChanged 事件中按列名从 Infragistics WebDataGrid 行获取数据。
VB.NET 代码示例:
If Me.WebDataGrid1.Behaviors.Selection.SelectedRows(0).DataItem("Status").ToString <> "Released" Then
'"Status" is the column name
End If
我认为将其更改为这样几乎可以做到,但无济于事。
if (this.WebDataGrid1.Behaviors.Selection.SelectedRows[0].DataItem["Status"].ToString() != "Released") {
//do stuff
}
具体来说,我得到的错误是Cannot apply indexing with [] to an expression of type 'object',我很肯定它指的是DataItem["Status"] 部分。
如何从选定行中获取由名称指定的列的值?
更新:我在下面的答案中找到了一个解决方案,但它可能会做得更好。如果出现更好的答案,我很乐意接受不同的答案。
【问题讨论】:
-
在他们的文档中,他们使用的是 Items 而不是 DataItem:help.infragistics.com/NetAdvantage/ASPNET/2011.1/CLR4.0/… 我试图看看有什么区别,但是使用他们网页上的搜索引发了异常。
标签: c# infragistics vb.net-to-c#