//A placer dans une classe statique
public static T[,] CutArray<T>(this T[,] array, int d1min, int d1max,
int d2min, int d2max)
{
T[,] result = new T[d1max - d1min + 1, d2max - d2min + 1];
for (int i = 0; i < d1max - d1min; i++)
for (int j = 0; j < d2max - d2min; j++)
result[i, j] = array[d1min + i, d2min + j];
return result;
}
//Vous pouvez maintenant extraire un sous-tableau par MyTab.CutArray(2, 2, 4, 4);