情况如下:我需要将WPF FixedPage
绑定到DataRow
。绑定不适用于DataRows
;他们反对DataRowViews
。我需要以最通用的方式做到这一点,因为我一无所知,无法控制DataRow
中的内容。
我需要的是能够获得给定DataRowView
的{{1}}。我无法在DataRow
上使用Find()
方法,因为它需要一个密钥,并且无法保证该表将具有主键集。
有没有人建议最好的解决方法?
答案 0 :(得分:6)
并非完全是一段性感的代码,但它们似乎不是一种自动查找行而不仅仅是循环表的方法。
DataRowView newRowView = null;
foreach (DataRowView tempRowView in myDataTable.DefaultView)
{
if (tempRowView.Row == rowToMatch)
newRowView = tempRowView;
}
if (newRow != null)
UseNewRowView(newRowView);
else
HandleRowNotFound();
答案 1 :(得分:3)
row.Table.DefaultView[row.Table.Rows.IndexOf(row)]
这是一个好的答案。但是如果你发现自己处于这种情况,你应该考虑更多地了解DataViews以及如何使用它们,然后将你的代码重构为以视图为中心而不是以表格为中心。