Вывод строки/столбца по заданным значениям

(Снова задаю вопрос, т.к. ранее ответа на него не дали...) Задача в том, чтобы найти два массива - X = {xj}, j= 1...m равный p-ой строке матрицы A = {aij} и массив Y = {yi}, i = 1...n, равный q-му столбцу матрицы F. Вывод 1-го столбца и строки удалось осуществить, но не по заданным значениям, ниже приведённый код или выдаст ошибку или НЕверно выведет строку/столбец:

...
        }
        private void button1_Click(object sender, EventArgs e)
        {
            int[,] m = new int[DGV.RowCount, DGV.ColumnCount];
            int z = Convert.ToInt32(L1_TB.Text); // Ввод числа для получения строки p
            int f = Convert.ToInt32(L_TB.Text);  // Ввод числа для получения столбца q
            //                                                        
            for (int p = 0; p < DGV.RowCount; p++)
                for (int q = 0; q < DGV.ColumnCount; q++)
                    m[p, q] = Convert.ToInt32(DGV[q, p].Value);
            //                                                        
            // Массив X                                               
            //                                       
            for (int q = 0; q < DGV.RowCount; q++)
                for (int p = 0; p < DGV.ColumnCount; p++)
                    m[q, p] = m[q, p];
            //                                                        
            for (int p = 0; p < DGV.ColumnCount; p++)
                for (int q = 0; q < DGV.RowCount; q++)
                    DGV1[q, p].Value = m[q, p];
            //                                                    
            // Массив Y                                           
            //                                                     
            for (int q = 0; q < DGV.RowCount; q++)
                for (int p = 0; p < DGV.ColumnCount; p++)
                    m[q, p] = m[q, p];
            //
        }
    }
}

Ответы (1 шт):

Автор решения: MBo
int[] X = new int[DGV.ColumnCount];
int[] Y = new int[DGV.RowCount];

for (int i = 0; i < DGV.ColumnCount; i++)
     X[i] = m[i, p];

Для Y сами допишите.

→ Ссылка