Hola! Realizé la insercion sin ningún problema... es cuestion de tu lógica para implementarla... Si bien este no es un lugar donde se realizan "tareas" sino donde se les guía con los problemas que puedan tener te dejo el código. Pero estudia el código y realiza lo mismo para los demas.
En tu clase
GestionProductos, le defines una longitud de 10 como maximo de registros. Por ello que
pos, es una variable de la posición que tomará tu registro en el arreglo.
Código C:
Ver originalusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
//Declaro la variable de la opcion a escojer
Int32 opcion,pos;
Producto objetoProducto = new Producto();
GestionProductos gp = new GestionProductos();
Console.WriteLine("Escoja una opcion ingresando el numero de la accion a realizar :");
Console.WriteLine("(1) Insertar un Producto");
Console.WriteLine("(2) Accion 2");
Console.WriteLine("(3) Accion 3");
Console.WriteLine("(4) Accion 4");
opcion = Convert.ToInt32(Console.ReadLine());
switch (opcion)
{
case 1 :
Console.WriteLine("Inserte la posicion que ocupará :");
pos = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Insertar Nombre del Producto :");
//Capturas el nombre insertado y le enviar a tu objeto
objetoProducto.nombre = Console.ReadLine();
Console.WriteLine("Insertar las unidades del Producto :");
//Capturas el stock insertado y le enviar a tu objeto
objetoProducto.stock = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Insertar el Precio del Producto :");
//Capturas el precio insertado y le enviar a tu objeto
objetoProducto.precio = float.Parse(Console.ReadLine());
//Y envias al metodo tu parametro pos y tu objeto
gp.insProducto(pos, objetoProducto);
Console.WriteLine("Datos del producto registrado :");
Console.WriteLine("Nombre : " + objetoProducto.nombre);
Console.WriteLine("Unidades : " + objetoProducto.stock);
Console.WriteLine("Precio : " + objetoProducto.precio);
Console.ReadKey();
break;
case 2 :
break;
case 3 :
break;
case 4 :
break;
}
}
}
}
Saludos!

.