Quantcast
Channel: Ayuda con Interface
Viewing all articles
Browse latest Browse all 6

Ayuda con Interface

$
0
0

Hola,

estoy obteniendo un error en la compilación de un programa al crear una interface que no logro saber porqué. (App.Escritorio, Visual Studio 2010, C# y BD Access 2007)

Os intento explicar como lo tengo montado a ver si logro hacerme entender:

Tengo un formulario padre (Compra) que mediante un botón llama a un formulario hijo (ProvAltaFactura). Este formulario hijo tiene una grid que cuando selecciono una fila, a través de un botón "enviar" me inserta los datos en dos textbox del formulario padre. Para hacer esta implementación he usado interfaces porque ya las había usado en otra ocasión (aprendí en este foro!!).

El error que obtengo al compilar es el siguiente:

'GestionJoyeria.ProvAltaFactura' no implementa el miembro de interfaz   'GestionJoyeria.IProvAlbaran.AddNewItem(System.Windows.Forms.DataGridViewRow)'

Adjunto les pongo el código que he implementado tanto para el formulario padre como para el hijo:

Formulario padre

namespace GestionJoyeria
{
    public partial class Compra : Form, IProvAlbaran
    {
        public Compra()
        {
            InitializeComponent();
        }

  #region IProvAlbaran Members
        public void AddNewItem(DataGridViewRow row)
        {
            string id_proveedor = row.Cells["Id_proveedor"].Value.ToString();
            string nombre = row.Cells["Nombre"].Value.ToString();

            txtIDProv.Text = id_proveedor;
            txtNomProv.Text = nombre;
        }
        #endregion

        private void btnBuscarProv_Click(object sender, EventArgs e)
        {
            ProvAltaFactura provAltaFactura = new ProvAltaFactura();
            provAltaFactura.Show(this);
        }
    }

    interface IProvAlbaran
    {
        void AddNewItem(DataGridViewRow row);
    }

Formulario Hijo:

namespace GestionJoyeria
{
    public partial class ProvAltaFactura : Form, IProvAlbaran
    {
        public ProvAltaFactura()
        {
            InitializeComponent();
        }

public void btnAddProv_Click(object sender, EventArgs e)
        {
            DataGridViewRow row = this.dgvProv.SelectedRows[0] as DataGridViewRow;
            IProvAlbaran parent = this.Owner as IProvAlbaran;
            parent.AddNewItem(row);
            Close();
        }

La implementación de la carga de la grid no la pongo, no es necesaria entiendo.

Yo creo que tiene que ser una chorrada pero por más que lo miro no consigo ver el fallo.

Muchas gracias.


Viewing all articles
Browse latest Browse all 6

Latest Images

Trending Articles





Latest Images