Autor
|
Tema: Validaciones (Leído 26,283 veces)
|
piwi
Desconectado
Mensajes: 439
|
Hay un evento de preborrado? Por los autonumericos simplemente me gusta tener control calculandolos
|
|
|
En línea
|
|
|
|
[D4N93R]
Wiki
Desconectado
Mensajes: 1.646
My software never has bugs. Its just features!
|
Más bien pierdes control, Que ganas teniendo "control" sobre el ID? nada.. Hay un evento de preborrado? Se llama boton de borrar Ahi haces la validación xD
|
|
|
En línea
|
|
|
|
piwi
Desconectado
Mensajes: 439
|
En mi caso necesito dar un id por tipo que es otro campo por lo que la clave sería id m Más bien pierdes control, Que ganas teniendo "control" sobre el ID? nada.. En mi caso la clave la forman dos campos, un id y un tipo por lo que tengo que calcular el id dependiendo del tipo. Hay un evento de preborrado? Se llama boton de borrar Ahi haces la validación xD El botón que utilizo es BindingNavigatorDeleteItem_Click pero ahí ya no puedo hacer nada. Me extraña que no puedan insertar una validación cuando utilizar un bindingnavigator. Quizá hay que sobreescribir el evento y en caso que digan que quieren borrar entonces llamarlo.
|
|
|
En línea
|
|
|
|
piwi
Desconectado
Mensajes: 439
|
Creo que con esto ya he conseguido realizar un modelo para un mantenimiento de una tabla. También tengo contemplado preguntar si se quiere borrar un registro por si alguien no sabe como hacerlo. Quizá todos los sabeís pero por si acaso aquí está. Si alguien ve algo que no está correcto se lo agradecería Imports System.Data.SqlClient Public Class Form1 Private BotonBorrar As ToolStripItem Private Sub FABRICANTEBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FABRICANTEBindingNavigatorSaveItem.Click Dim li_retorno As Integer li_retorno = Me.Validate() If li_retorno = -1 Then Me.FABRICANTEBindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.FabricanteDataSet) End If End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: esta línea de código carga datos en la tabla 'FabricanteDataSet.FABRICANTE' Puede moverla o quitarla según sea necesario. Me.FABRICANTETableAdapter.Fill(Me.FabricanteDataSet.FABRICANTE) Me.BotonBorrar = FABRICANTEBindingNavigator.DeleteItem End Sub Private Sub FABRICANTEDataGridView_CellBeginEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles FABRICANTEDataGridView.CellBeginEdit If FABRICANTEDataGridView(1, e.RowIndex).Value Is DBNull.Value Then FABRICANTEDataGridView(1, e.RowIndex).Value = UltimoCodigo() End If End Sub Private Sub FABRICANTEDataGridView_DataError(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs) Handles FABRICANTEDataGridView.DataError MsgBox(e.Exception.Message, MsgBoxStyle.Exclamation, "Fabricantes") End Sub Private Sub FABRICANTEDataGridView_RowValidated(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles FABRICANTEDataGridView.RowValidated Me.TableAdapterManager.UpdateAll(Me.FabricanteDataSet) End Sub Private Sub FABRICANTEDataGridView_RowValidating(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles FABRICANTEDataGridView.RowValidating If FABRICANTEDataGridView(0, e.RowIndex).Value Is DBNull.Value Then MsgBox("Debe introducir el fabricante", MsgBoxStyle.Exclamation, "Fabricantes") e.Cancel = True Else e.Cancel = False End If End Sub Private Function UltimoCodigo() As Integer Dim Conexion As New SqlConnection("Data Source=192.168.1.1;Initial Catalog=PRUEBAS;user id = piwi; password = piwi;") Dim Datos As New DataSet Dim li_ultimo As Integer Conexion.Open() Dim Adaptador As New SqlDataAdapter("SELECT MAX(IDFABRICANTE) FROM FABRICANTE", Conexion) Adaptador.Fill(Datos) If Datos.Tables(0).Rows(0).Item(0) Is DBNull.Value Then li_ultimo = 0 Else li_ultimo = Datos.Tables(0).Rows(0).Item(0) End If li_ultimo = li_ultimo + 1 Conexion.Close() Return li_ultimo End Function Private Sub FABRICANTEBindingNavigator_ItemClicked(ByVal sender As Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles FABRICANTEBindingNavigator.ItemClicked If e.ClickedItem Is Me.BotonBorrar Then If MessageBox.Show("Está seguro de querer borrar el registro?", "Fabricantes", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.Yes Then Me.FABRICANTEBindingNavigator.DeleteItem = Me.BotonBorrar Else Me.FABRICANTEBindingNavigator.DeleteItem = Nothing End If End If End Sub End Class
|
|
« Última modificación: 9 Julio 2010, 07:48 am por piwi »
|
En línea
|
|
|
|
[D4N93R]
Wiki
Desconectado
Mensajes: 1.646
My software never has bugs. Its just features!
|
Buenísimo, que bueno que resolviste el problema, saludos!
|
|
|
En línea
|
|
|
|
piwi
Desconectado
Mensajes: 439
|
Ahora me encuentro con otro problema. Tengo dos combobox dentro del datagrid enlazados a datos. Como hago para filtrar el contenido del segundo dependiendo de lo que me seleccionen en el primero?
Un saludo.
|
|
|
En línea
|
|
|
|
[D4N93R]
Wiki
Desconectado
Mensajes: 1.646
My software never has bugs. Its just features!
|
Una pregunta para poder contestarte, estás queriendo filtrar los resultados con el Combo Box?
|
|
|
En línea
|
|
|
|
piwi
Desconectado
Mensajes: 439
|
Si, tengo un combo con fabricantes y otro con productos al seleccionar un fabricante, solamente mostrar los productos de este.
Fabricantes: idfabricante, fabricante Productos idproducto(pk), idfabricante, producto
|
|
|
En línea
|
|
|
|
[D4N93R]
Wiki
Desconectado
Mensajes: 1.646
My software never has bugs. Its just features!
|
Suscríbete al evento TextChanged o SelectedItemChanged del ComboBox y en ese método setteas la propiedad Filter del bindingSource apropiadamente. EDIT: Ok, es fácil, xD tiempo sin usarlo!! Simplemente en el bindingSource, espero que estés usando uno, en el TextChange o en el SelectedItemChanged modifica la propiedad Filter con el filtro apropiado, como: bindingSource.Filter = "columna = '"+variableDelComboBox+"'";
Espero te sirva! Saludos!
|
|
« Última modificación: 10 Julio 2010, 18:26 pm por D4N93R »
|
En línea
|
|
|
|
piwi
Desconectado
Mensajes: 439
|
Gracias. Ya me filtra. El problema que tengo es cuando cambio el primer combo, como asigno un nulo al segundo para que se borre la selección anterior?
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
validaciones en textbox
.NET (C#, VB.NET, ASP)
|
basickdagger
|
3
|
4,257
|
13 Septiembre 2011, 18:44 pm
por basickdagger
|
|
|
Ayuda con Validaciones
.NET (C#, VB.NET, ASP)
|
tukubanitorico
|
0
|
1,670
|
5 Marzo 2012, 20:26 pm
por tukubanitorico
|
|
|
Problema con validaciones
Programación C/C++
|
ZedGe
|
2
|
2,135
|
9 Diciembre 2012, 07:44 am
por rir3760
|
|
|
Validaciones 2 digitos en c++
Programación C/C++
|
socram7
|
3
|
2,592
|
13 Junio 2013, 23:24 pm
por pacoperico
|
|
|
Validaciones TextBox
Programación Visual Basic
|
MC.cover
|
2
|
2,165
|
6 Noviembre 2016, 01:49 am
por MC.cover
|
|