6 ago 2011

Tutorial Expression Blend 4 con C# y SQL (Parte 1 y 2)

En el siguiente tutorial aprenderemos a crear una interfaz gráfica  mas profesional WPF con Expression Blend 4, a escribir código en los diferentes controles que agreguemos a la interfaz y a conectar nuestra aplicación a una base de datos con SQL Server simple.


Aquí unas imágenes del resultado final.



Video Tutorial:

Parte 2




private void Button_Click(object sender, System.Windows.RoutedEventArgs e)
  {
     Este es el del boton Aceptar.
            SqlConnection conexion = new SqlConnection();
            conexion.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Aplicacion 3 +BD.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conexion;
            cmd.CommandText = "SELECT ID_Persona FROM Personal WHERE ID_Persona="+txtControl.Text+"";//Aqui se me olvido agregar el campo No.Control en la BD asi que puse el ID_Persona pero en realidad debe de ser otro dato que no sea el id, ya que en el motor de BD puse el ID autoincrementable
            SqlDataReader dr;
            conexion.Open();
            dr = cmd.ExecuteReader();
            if (dr.Read())
            {
                conexion.Close();
                MessageBox.Show("El Miembro ya esta Registrado", "Aviso", MessageBoxButton.OK, MessageBoxImage.Information);

            }
            else
            {
                conexion.Close();
                cmd.CommandText = "INSERT INTO Personal(Nombre, Apellido, Sexo, imagen) VALUES(@Nombre, @Apellido, @Sexo, @Image)";
                cmd.Parameters.AddWithValue("@Nombre", txtNombre.Text);
                cmd.Parameters.AddWithValue("@Apellido", txtApellido.Text);
                //cmd.Parameters.AddWithValue("@ID",int.Parse(txtControl.Text));
                if (RMasculino.IsChecked == true)//Es un RadioButton, aqui si cambio la programacion a comparacion del tipico radiobutton de C#
                {
                    cmd.Parameters.AddWithValue("@Sexo", "Masculino");
                }
                else if (RFemenino.IsChecked == true)
                {
                    cmd.Parameters.AddWithValue("@Sexo", "Femenino");
                }
                cmd.Parameters.AddWithValue("@Image", nombreImagen);
                conexion.Open();
                cmd.ExecuteNonQuery();
                conexion.Close();
                MessageBox.Show("Datos Guardados Exitosamente","Aviso",MessageBoxButton.OK,MessageBoxImage.Information);
                //Limpieza de textbox
                txtNombre.Clear();
                txtApellido.Clear();
                txtControl.Clear();
                nombreImagen = "";
              
                
            }
  }

  private void BtnClose_Click(object sender, System.Windows.RoutedEventArgs e)
  {
   // TODO: Agregar implementación de controlador de eventos aquí.
   this.Close();
  }
        public string nombreImagen;
  private void LinkLabel_Click(object sender, System.Windows.RoutedEventArgs e)
  {
   // TODO: Agregar implementación de controlador de eventos aquí.
            Microsoft.Win32.OpenFileDialog openFiledialog = new Microsoft.Win32.OpenFileDialog();//En Expression no encontré el openfiledialog pero encontré esta otra forma para mandarlo llamar.
            openFiledialog.Multiselect = false;
            openFiledialog.Filter = "JPG Files (*.jpg|*.jpg|PNG Files (*.png)|*.png|Bitmap files (*.bmp)|*.bmp)";
            openFiledialog.Title = "Selecciona una fotografia";
            if ((bool)openFiledialog.ShowDialog())
            {
                try
                {
                    if (openFiledialog.OpenFile() != null)
                    {
                        Picture.Source = new BitmapImage(new Uri(openFiledialog.FileName, UriKind.Absolute));
                       // MessageBox.Show("Imagen Cargada","Aviso",MessageBoxButton.OK,MessageBoxImage.Information);
                        nombreImagen = openFiledialog.FileName;
                        

                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error: No se puede leer el archivo del directorio:"+ex.Message);
                }
            }
            else
            {
                MessageBox.Show("Ocurrio un problema, intentalo mas tarde");
            }
            
        }

Eso fue todo amigos, espero sus comentarios y esperen la parte 2 que en breve subo a youtube, ya que el video completo son 24 minutos, y este video solo son 14 :D
Paginas que te servirán:
http://msdn.microsoft.com/es-es/library/system.windows.controls.aspx
http://www.c-sharpcorner.com/1/191/


0 comentarios:

Publicar un comentario

Compartelo en:

Twitter Delicious Facebook Digg Stumbleupon Favorites More