Public Class ucControlMenu
    Inherits System.Web.UI.UserControl

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    End Sub
    Protected Sub ASPxCallbackPanel1_Callback(ByVal sender As Object, ByVal e As DevExpress.Web.CallbackEventArgsBase) Handles FormMenuCallPanel.Callback
        'Agrega el codigo al txtID
        txtID.Text = e.Parameter

        'Solo si es una entidad, le agrega los datos a los textbox
        If e.Parameter <> 0 Then
            Dim oMenu As New MenuBusinessObject(e.Parameter)
            With oMenu.Entity
                txtNombre.Text = .nombreMenu
                txtNombre.Validate()
                txtDescripcion.Text = .descripcionMenu
                txtImagen.Text = .URLimagen
                txtURL.Text = .URLOpcion
                cmbPadre.Value = If(.idPadre Is Nothing, Nothing, .idPadre)
                txtOrden.Text = If(.orden Is Nothing, 0, .orden)
            End With
        Else
            txtNombre.Text = ""
            txtDescripcion.Text = ""
            txtImagen.Text = ""
            txtURL.Text = ""
            cmbPadre.SelectedIndex = -1
            txtOrden.Text = 0
        End If
        'FIJAMOS EL FOCUS
        txtNombre.Focus()
    End Sub

    Protected Sub btnGuardar_Click(sender As Object, e As EventArgs) Handles btnGuardar.Click
        'Proceso para guardar o modificar el usaurio

        Dim oMenu As MenuBusinessObject

        'Si es igual a 0, es que es nuevo usuario. Sino en txtID se encuentra el código.
        If txtID.Text.Equals("0") Then
            oMenu = New MenuBusinessObject()
            oMenu.Entity.idSistema = 1
        Else
            oMenu = New MenuBusinessObject(CInt(txtID.Text))
        End If

        With oMenu.Entity
            .nombreMenu = txtNombre.Text
            .descripcionMenu = txtDescripcion.Text
            .URLimagen = txtImagen.Text
            .URLOpcion = txtURL.Text
            .idPadre = cmbPadre.Value
            .orden = txtOrden.Text
        End With

        Dim msg As MSG = oMenu.SaveChanges()
        If msg.EventType = dGen.Library.Entity.MSG.MsgType.Success Then

            popupFormMenu.ShowOnPageLoad = False
            treeMenu.DataBind()
        End If
    End Sub

End Class