void Randomize <T>(MetadataTable <T> tbl) { T[] t = tbl.OfType <T>().ToArray(); for (int i = 0; i < t.Length; i++) { T tmp = t[i]; int j = Random.Next(0, t.Length); t[i] = t[j]; t[j] = tmp; } tbl.Clear(); foreach (var i in t) { tbl.AddRow(i); } }