Entradas

Mostrando las entradas etiquetadas como WPF

Garbage Collection (Recolector de basura).

Un poco de detalle técnico del Garbage Collection (Recolector de basura) de .NET Framework, esté administra la asignación y liberación de memoria para nuestras aplicaciones. Cada vez que se crea un nuevo objeto, el Common Language Runtime asigna memoria para el objeto del montón administrado. Siempre y cuando el espacio de direcciones está disponible en el montón administrado, el tiempo de ejecución continúa asignando espacio para nuevos objetos. .   Sin embargo, la memoria no es infinita.   Finalmente, el recolector de basura debe realizar una colección con el fin de liberar memoria.   Motor de optimización  del recolector de basura determina el mejor momento para realizar una recolección, en base a las asignaciones que se realizan.   Cuando el recolector de elementos no utilizados realiza una recolección, busca objetos en el montón administrado que ya no están siendo utilizados por la aplicación y realiza las operaciones necesarias para recuperar su memoria.

Manejando cadenas de conexión en app.config.

Imagen
Después de tanto tiempo sin escribir por aquí no porque no quiera hacerlo si no porque se me han presentado una serie de situaciones personales que me han evitado estar más cerca de esto pero ahora es el día de volver a escribir para este blog. Hoy escribiremos a cerca del uso del App.config o cadenas de conexión en el App.config principalmente veremos como usar la cadena de conexión dentro de esté archivo. De echo simularemos lo que hacemos algunos o la mayoría de los programadores cuando ponemos las cadenas de conexión en el web.config. Esté ejemplo lo estoy haciendo con Windows Presentation Foundation (WPF) como ya es costumbre pero de igual manera lo he echo en Windows Forms. Para comenzar los primero es ¿Cómo agregamos un archivo App.config a nuestro proyecto ?  Ahora vamos a seleccionar nuevo elemento y buscaremos el siguiente: En esté momento ya tenemos nuestro app.config o como le hayamos puesto de nombre en nuestro proyecto ahora como agregamos la conexión de sql

Cómo escribir en el "Log de Windows" o Visor de eventos con C#.

Después de casi un mes sin escribir por aquí, regreso para mostrarles algo sumamente sencillo que nos puede ayudar bastante para nuestros sistemas, esto es como escribir en el "log de windows", esto es muy útil para los administradores del sistema en muchas ocasiones ya que podemos registrar ciertas acciones que son importantes durante la ejecución de la aplicaciones. En muchas ocasiones se necesitan para escribir posibles fallos, advertencias, y cuestiones importantes que debemos de saber que ocurrieron en algún tiempo. Bueno la referencia que tenemos que usar es using System.Diagnostics; Ahora les mostraré una pequeña clase muy simple que cree para realizar la acción de escribir en el Log de Windows. public class WriteLog { private string Application; private string EventLogName; public WriteLog(string app, string log) { Application = app; EventLogName = log; // Create the event log if it doesn't exist if (!Even

Agregando líneas rectas "Bing Maps Control WPF".

Imagen
En algunos casos es posible que desees trazar algunos trazos de línea recta entre dos puntos en un mapa. Una forma de hacerlo se muestra en el siguiente código: private void PutPoint() { //List of Locations List < Location > locationsList = new List < Location >(); Location locdetail = new Location (21.1869553, -102.88504169999999);        locationsList.Add(locdetail);        locdetail = new Location (21.8815453, -102.29124539999998);        locationsList.Add(locdetail);        //Center location in map        myMap.Center = locdetail;        myMap.ZoomLevel = 8;        //Line configuration        MapPolyline line = new MapPolyline ();        line.Stroke = new SolidColorBrush ( Colors .Blue);        line.StrokeThickness = 3.0;        line.Locations = new LocationCollection ();        //Add locations        foreach ( Location loc in locationsList)        {              Pushpin pin = new Pushpin ();              p

Agregando puntos de localización "Bing Maps Control WPF".

Imagen
Usted puede utilizar marcadores para representar puntos de datos geográficos, y, a menudo, eso es una buena opción. Sin embargo, hay muchas situaciones en las que podemos acabar con un punto simple. Aquí lo que nos va a permitir es identificar una posición del mapa con un punto de localización. Para agregar una localización vamos a crear algo como esto, con esto enviaremos a una localización un punto en este caso. Con esto estamos creando una localización, fija.  private void PutPoint() { Location locdetail = new Location (21.1869553, -102.88504169999999); myMap.Center = locdetail; myMap.ZoomLevel = 13; Pushpin pin = new Pushpin (); pin.Location = locdetail; myMap.Children.Add(pin); } Esto en ejecución se vería de la siguiente manera:

Introducción a integración de mapas Bing Maps con WPF.

Imagen
Introducción Bing Mps Control En este manual abarcaremos el uso de Bing Maps Control con WPF, existen muchas herramientas para la creación de mapas, como la API de google, entre otras. Porque veremos ahora la implementación de Bing Maps Control, es un control diseñado ya para la creación de mapas y su uso es bastante sencillo poco ha poco iremos viendo su implementación y nos daremos cuenta de que no tiene mucha complejidad. ¿Que necesitamos para comenzar a utilizar Bing Maps Control Descargar el control de bing maps. Crear una cuenta de desarrollador Bing. Comprobar requisitos. ¿Cómo descargo el control de bing mps?   Para descargarlo vamos a ir a la siguiente dirección: http://www.microsoft.com/en-us/download/details.aspx?id=27165 , una vez descargador lo instalamos. ¿Cómo creo una cuenta de desarrollador Bing? Para crear la cuenta nos registramos en la siguiente dirección con nuestra cuenta de Hotmail si la tenemos y ahí podemos conseguir la key de bi

Exportar a Excel DataGrid con WPF

Imagen
Un tema interesante el que ahora planteamos es el exportar datos de nuestra aplicación a Excel, para las personas que nos ha tocado trabajar con empresas que están muy acostumbradas a usar sus procesos de sistemas en hojas de excel, esto es muy importante ya que ellos requieren seguirlo haciéndolo para no cambiar tanto el proceso a sus empleados, o al menos de una manera tan rápida.  Por lo que ahora veremos como exportar un DataGrid a excel, aquí les dejo la imagen del ejemplo sencillo que he realizado y como culminará al final de realizarlo: Bueno ahora como realizamos esto primero que nada construiremos una clase Articles que contendrá como atributos { Cve, Nombre, Cantidad}. Es un ejemplo muy sencillo así que quedaría de la siguiente manera:  namespace exporttoexcel { class Articles { private int _Cve ; public int Cve { get { return _Cve ; } set { _Cve = value ; } } privat

DispatcherTimer in WPF

Todos los programadores que trabajamos con la plataforma Windows nos hemos de haber dado cuenta que en más de alguna ocasiones nos podemos encontrar con la necesidad de hacer ejecuciones de instrucciones cada cierto tiempo, para esté tipo de ejecuciones repetitivas podemos darnos cuenta que podemos utilizar " Timer  o  DispatcherTimer", son herramientas que nos ayudan ha generar estás ocasiones aquí un ejemplo bastante básico y sencillo a cerca de lo comentado.  Primero que nada para usar el DispatcherTimer necesitamos incluir la siguiente librería:  using  System.Windows.Threading; Que nos permitirá poder hacer uso del mismo.  DispatcherTimer dt =  new  DispatcherTimer () ; De está manera creamos el objeto.              dt.Tick += dt_Tick;              dt.Interval = TimeSpan.FromSeconds ( 2 ) ;              dt.Start () ;         void  dt_Tick ( object sender, EventArgs e )          {             //Ejecuta la sentencia repetitiva cada 2 segundos          }

Aspectos Básicos de Styles en WPF.

Buen día, hablando con un amigo de programación web, de las hojas de estilo que ayudan bastante para el diseño de la aplicación y facilitan la forma en que le agregamos colores, tipos de fuentes, etc a los controles, pensamos existirá eso en WPF. Buscando en la web, y con un poco de antecedentes ya que en el proyecto que estoy desarrollando actualmente lo usamos, así que les dejamos un poquito de información al respecto. Styles Un objeto Style es una colección de valores que representan propiedades para el control indicado. Podemos asignarle automáticamente a todos los controles de un mismo tipo, por ejemplo un Button, ciertas propiedades como el color de fondo, tipo de letra, etc… de esta forma todos nuestros controles de este tipo obtendrán estas características: Ejemplo:  <Style TargetType="{x:Type Button}">             <Setter Property="Background" Value="Red"></Setter>             <Setter Property="Foregr

Uso de TabControl en C# & WPF.

Imagen
Hola a todos vuelvo a escribirles ahora sobre el uso del tabControl, realizaremos un ejemplo rápidamente donde mostraremos un grid con contactos como este: Al momento de dar click en el botón de "Edit" nos mandará a la otra pestaña para editar los datos aquí no haremos el proceso de edición que si lo podemos hacer pero lo que queremos es visualizar el uso de tabControl nada mas.  Una cuestión interesante es que vamos a ver como cambiar de tabItem al dar doble click "MouseDobleClick" sobre el grid ya que ejecuta un evento y hace que el tabItem no se cambie y veremos la solución. Al momento de dar doble clic o clic en edit veremos algo así:  Ahora si comenzaremos con el diseño XAML quedaría de la siguiente forma: 

Resaltar los datos en un datagrid WPF.

Imagen
Bueno hoy aprenderemos a como manejar colores en un datagrid, en esté caso trabajaré con una aplicación windows de WPF. Para hacer esto utilizaré un evento del datagrid que se llama "LoadingRow" del datagrid, esto es simple, solo tenemos que identificar el elemento y colocarle el color que desee de la siguiente forma: ¿Cuando se ejecuta el evento loadingRow? el evento siempre que los datos se recarguen o tengan que mostrarse en el datagrid se ejecuta esté evento, el datagrid tiene una ventaja importante en esté evento que reutiliza las columnas o sea que nada mas recarga las columnas visibles en pantalla ya que las filas y columnas las reutiliza por lo que nos optimiza el uso de memoria, así que no tendremos ningún problema al utilizar esté evento del datagrid.  Y con esto que les comento bueno cómo lo hariamos, si se fijan en la figura anterior estamos siguiendo con la información de alumnos del ejemplo pasado, bueno de un color mostramos a los alumnos aprobados y

Busquedas Lambda y LinQ en Listas genericas C#

Imagen
El uso de esté tipo de busquedas dentro de las listas genéricas o de cualquier tipo, nos facilita mucho para recuperar la información que deseamos, mediante esté tipo de busquedas podemos traer ciertos datos como si estuvieramos utlizando la base de datos, podemos ordenar nuestras listas, y muchas otras acciones que poco a poco con el uso de esto iremos aprendiendo, hoy aprenderemos algunas herramientas que podremos utilizar a la hora de utilizar listas. Para comenzar nuestro ejemplo de hoy, tenemos una clase muy sencilla llamada Alumnos, la clase es la siguiente:  class Alumnos     {         private string _Name;         public string Name         {             get              {                  return _Name;             }             set             {                 _Name = value;             }         }         private double _FinalAverage;         public double FinalAverage         {             get             {            

Agregar selected All a un datagrid en wpf.

Hola, buenos días, la publicación de hoy ha sido un poco tarde ya que me fui a disfrutar de un partido de fútbol profesional, digo también hace falta sacar el stress, pero ya estoy aquí escribiendoles, lo que vamos a aprender el día de hoy es a agregar un "SELECTED ALL IN DATAGRID" , a que me refiero con esto pensaran muchos de nuestros lectores, es muy sencillo me refiero a colocar una función dentre de nuestro datagrid para que nos permita seleccionar los elementos de un datagrid esto por medio de checkboxes. Código XAML:     <Grid>         <DataGrid AutoGenerateColumns="False" Height="246" HorizontalAlignment="Left" Margin="56,48,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="409" >             <DataGrid.Columns>                 <DataGridTextColumn Header="PAIS" Binding="{Binding Path=PAIS}" Width="*"></DataGridTextColumn>

ListBox in WPF introduction.

Imagen
Hola a todos mañana el final del año y yo sigo aquí escribiéndoles para cerrar el año, en está ocasión les comentare a cerca de un poco del uso de "ListBox", un ejemplo muy sencillo únicamente para enlazar una lista de tipo a una ListBox por medio del ItemSource del control.  Ahora realizaremos un ejemplo muy sencillo para visualizar el uso del control “ListBox” de WPF, entre las acciones que vamos a aprender van a ser a ingresar “ítems” en el control ListBox de WPF, manejo de Listas de tipo en C# y seleccionar un elemento de la lista y obtener el elemento seleccionado. Para realizar este ejercicio sencillo, vamos a comenzar realizando el código XAML que utilizaremos en nuestra aplicación WPF. Esté es el código utilizado es muy sencillo como lo  vamos a ver únicamente creamos un ListBox y dos etiquetas “Labels”. < Window x : Class ="ControlMessageBox.ListWPF"         xmlns ="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   

Formato DateTime en C# (Date Formatting in C#)

Imagen
Me da gusto afrontar el día del "fin del mundo" escribiendo para ustedes, hoy quiero escribir a cerca de los formatos DataTime en C#, existen muchos formatos disponibles para realizar esto. Podemos usar el método toString de tipo DataTime. ToString recibe muchos formatos útiles. Estos formatos se confunden en las formas de sintaxis.  Aquí les dejo los posibles formatos que podemos utilizar en el método toString.

Validar Conexión a SQLServer con WPF (SqlConnection).

En esté post sólo realizaremos una validación a una conexión SQL Server para verificar que la conexión es éxitosa. Para verficar la conexión utilizaremos el "SqlConnection" lo realizaremos de una manera sencilla y muy rápida.  En mi caso tengo una clase para éste ejemplo no implica que ustedes lo tengan que hacer así en mi caso la clase se llama ConnectionV, está clase tiene un método llamado "IsConnectionValid", que recibe el connectionstring. El código de la clase es el siguiente:  public class ConnectionV { SqlConnection conexion = new SqlConnection ( ) ; public bool IsConnectionValid ( string connectionString ) { try { conexion . ConnectionString = connectionString ; conexion . Open ( ) ; return true ; } catch { return false ; } finally {

Validar TextBox en WPF.

Es muy común que cuando se esté desarrollando un sistema o programa en donde el usuario necesite insertar o escribir información tengamos que validar la información que tiene que teclear el usuario, esto para asegurarnos que la información que se va a ingresar o se está ingresando sea lo más correcta posible. Por ejemplo si el usuario tiene que ingresar un número teleofonico no sería correcto dejarlo escribir texto si no puros números. Para validar estás situaciones encontraras una y mil maneras para hacerlo, en mi caso esté ejemplo que mostraremos en WPF validaremos un caja de texto "textbox" para que al escribir un carácter si no es valido no lo escriba en la caja y si es válido podrá escribirlo en la caja de texto. Sólo Números en TextBox. Si desea escribir sólo números hágalo de la siguiente manera, para mi ejemplo mi TextBox se llama txtValidacion: private void txtValidacion_PreviewTextInput ( object sender , TextCompositionEventArgs e ) {

Colocar un CheckBox en un DataGrid con DataTemplete.

Imagen
Después de unos días de estar alejado de ustedes por tanto trabajo hoy regreso a publicarles y espero que sea más seguido nuestra publicación del día de hoy es porque he visto como muchas personas en la red tienen esté problema ¿Cómo colocar un CheckBox dentro de un datagrid y manipularlo con algún evento?, aqúi les mostrare como poder hacerlos. Primero que nada vamos a crear nuestro código XAML ya que trabajaremos con WPF y C#. El código XAML para nuestro ejemplo queda de la siguiente manera: <DataGrid AutoGenerateColumns= " False " SelectionMode= " Single " Grid.Row= " 3 " Height= " 133 " HorizontalAlignment= " Left " Margin= " 23,49,0,0 " x:Name= " dtgGradesByTrim " VerticalAlignment= " Top " Width= " 756 " CanUserDeleteRows= " False " CanUserAddRows= " False " ScrollViewer.HorizontalScrollBarVisibility= " Auto " > <DataGrid.Col