Nunca habia usado el Visual Studio 2010 y despues de haber pasado unos cuantos dias buscando en google, y en el foro, acudo a vosotros, espero que me podáis ayudar.
Estoy haciendo un programa para controlar la entrada y salida de los productos de una tienda.
Ya que una Marca de un producto puede pertenecer a una o mas categorias (Ejemplo: la Marca "Nike" puede estar en las Categorias "Pantalones" como "Zapatillas" etc...)
tengo en una base de datos, 3 tablas.
Categorias
Id (num)
tCategoria (texto)
Marca
Id (num)
tMarca (texto)
Categorias_Marcas
Id (num)
IDCat (num)
IDMarcas (num)
------------------------------------------------------------------------------------------
En un form tengo: 1 comboBox, 1 TextBox, un Boton y 1un DataGridView
El combobox sirve para que el usuario pueda seleccionar una categoria de las que hay y el textbox para poner el nombre de la marca.
Una vez que la marca esta creada e insertada en la base de datos (Hasta ahi todo bien


El dataGridView tiene 2 Columnas:
En la primera tengo DataGridViewComboBoxCell y la segunda columna DataGridViewTextBoxCell
El problema viene ahora
Lo que intento hacer es que en la primera columna( combobox) aparezcan todas las categorias que hay en la tabla "Categorias" y que la seleccionada sea la categoria que el usuario habia escogido anteriormente y que en la segunda columna aparezca el nombre de la Marca. para que el usuario pueda modificar directamente la categoria o el nombre de la marca.
Lo he intentado hacer con esta sentencia:
Código SQL:
Ver original
SELECT Categorias.tCategoria, Marcas.tMarca FROM Marcas INNER JOIN (Categorias INNER JOIN Categorias_Marcas ON Categorias.Id = Categorias_Marcas.IDCat) ON Marcas.Id = Categorias_Marcas.IDMarcas


Me funciona, pero a la hora de modificar las categorias, no se abre la lista del comboBox y me salta un error, diciendome que en esa celda solo se admiten numeros.
(es un poco logico ya que en la tabla Categorias_Marcas solo se pueden poner numeros...)
pero como lo podría hacer?? Alguna sugerencia?? otra forma de hacerlo??
Espero que no me haya liado mucho y que me podáis ayudar.
Gracias de antemano
Un saludo