使用 C# .NET 4.5、MS Visual Studio 2012、WPF。
你好,刚刚让这段代码终于起作用了,它基本上是通过数据网格进行迭代来进行行的。
请注意,他可能会冒犯所有 WPF 奇才!
public IEnumerable<System.Windows.Controls.DataGridRow> GetDataGridRow(System.Windows.Controls.DataGrid grid)
{
var itemsource = grid.ItemsSource as System.Collections.IEnumerable;
paretogrid.UpdateLayout();
if (null == itemsource) yield return null;
foreach (var item in itemsource)
{
var row = grid.ItemContainerGenerator.ContainerFromItem(item) as DataGridRow; // null?
if (null != row) yield return row;
}
}
private void ShowArrows()
{
var rows = GetDataGridRow(paretogrid); // fetching null?
foreach (DataGridRow r in rows)
{
DataRowView rv = (DataRowView)r.Item;
}
}
正如你所看到的,我遍历了行。现在我想要做的是将列索引 2 处的单元格值与每个“行”上的列索引 4 进行比较,然后如果 true 或 false 则相应地更新列 5。我可以迭代列,这让我可以逐个单元格地进行操作,但这不是我想要的,例如
foreach (DataGridColumn column in paretogrid.Columns)
那么是不是这样:
paretogrid.Columns[2].GetCellContent(something here) as textblock;
请参阅下面的解释,它将帮助您弄清楚为什么您会看到您所看到的内容
好吧,让我让您更容易理解 TextBox,例如,如果我这样做:
var myInt = (int)textBox1.text;
例如这会编译,因为我暗示我想要myInt
存储一个Int32
然而值:
var myInt = (int)textBox1;
会失败,因为你无法转换Object
, 哪一个是TextBox
到一个值,这是否可以让您更容易地看到您最初的错误在哪里以及您得到它的原因。
这也与WinForms
vs WPF
如果基本上是一些简单的事情,我相信我们很多人以前都做过,因为我们忘记附加.Text
当我们想要转换时到对象的末尾Value
对象持有而不是对象本身
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)