我使用.NET 4.5啓動了一個項目,現在我必須切換到.NET 4.0。一切工作正常,除了ItemContainerGenerator的「Items」屬性丟失。我用它來查找以鍵入鍵的字母開頭的DataGrid的行。 的代碼是:.NET 4.0中的ItemContainerGenerator.Items
ReadOnlyCollection<object> rows = datagrid.ItemContainerGenerator.Items;
datagrid.ScrollIntoView(rows[rows.Count - 1]);
foreach (DataRowView row in rows)
{
string name = row.Row.ItemArray[0].ToString();
if (name.StartsWith(keyChar + "", StringComparison.OrdinalIgnoreCase))
{
datagrid.ScrollIntoView(row);
datagrid.UpdateLayout();
return;
}
}
注:調試時,「項目」,物業存在並填補。
你知道一種方法來訪問「項目」 - 屬性或變通方法來獲得相同的功能,而不使用「項目」屬性?任何建議都會受到歡迎。
即使在4.0屬性中也可以看到它:https://msdn.microsoft.com/en-us/library/system.windows.controls.datagrid_properties(v=vs.100) .aspx – xanatos
謝謝,我一直在做它太複雜。 注意:我必須用ItemCollection替換ReadonlyCollection