El Blog del Gatogriego

Blog para intercambio de Conocimientos

Archive for the ‘C Sharp’ Category

Lenguaje C# de Visual Studio .NET

Como llenar y Recorrer un DataSet

Posted by Jorge Vázquez Vuelvas en agosto 21, 2008

Este Ejemplo nos muestra como llenar una DataSet con una Consulta de una Base de Datos en Acces y despues recorremos el DataSet para mostrar los datos devueltos por la consulta en unos TextBox.

OleDbConnection connection = new OleDbConnection();

string path = Application.StartupPath + @”\BasedeDatos.mdb”;

connection.ConnectionString = @”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” + path;

string sSQL = “SELECT Proveedores.* FROM Proveedores WHERE Proveedores.Nombre=’miproveedor'”;

 //Abrir Coneccion

 connection.Open();

 //Crear un objeto DataAdapter y proporcionar el string de Consulta.

 OleDbDataAdapter MyDataAdapter = new OleDbDataAdapter(sSQL, connection);

 //Crear un nuevo objeto DataSet para alojar los registros.

 DataSet DS1 = new DataSet();

 //Rellenar el DataSet con las filas devueltas.

 MyDataAdapter.Fill(DS1, sSQL);

 //RECORRER EL DATASET PARA LLENAR LOS CAMPOS

 foreach (DataRow renglon in DS1.Tables[sSQL].Rows)

   {

              textBox1.Text = renglon[“Nombre”].ToString();

              textBox2.Text = renglon[“RFC”].ToString();

              textBox3.Text = renglon[“Telefono”].ToString();

              textBox4.Text = renglon[“Pagina”].ToString();

      }

 connection.Close();

Posted in C Sharp | 10 Comments »

Obtener Valores de Celdas en DataGridView

Posted by Jorge Vázquez Vuelvas en agosto 20, 2008

Aquí les muestro algunas formas de obtener Valores de las Celdas en un DatagridView.

Esta línea nos permitirá observar el valor que contiene la celda en la que estamos posicionados.

private void dataGridView1_CellContentClick(object sender,DataGridViewCellEventArgs e)

{

   MessageBox.Show(dataGridView1.CurrentCell.Value.ToString());

}

 

O también de esta otra manera

 private void dataGridView1_CellContentClick(object sender,DataGridViewCellEventArgs e)

{

   MessageBox.Show(dataGridView1[dataGridView1.CurrentCell.ColumnIndex,           dataGridView1.CurrentCell.RowIndex].Value.ToString());

}

 

O si quisiéramos obtener el Valor de una Celda en Específico

private void dataGridView1_CellContentClick(object sender,DataGridViewCellEventArgs e)

{

  //indice o nombre de la columa, //indice o nombre del renglon       

   MessageBox.Show(dataGridView1[0,0].Value.ToString());

}

 Todo es Cuestión de jugar con las propiedades del DataGridView.

Posted in C Sharp | 16 Comments »

OpenFileDialog y SaveFileDialog Causando Excepciones Thread

Posted by Jorge Vázquez Vuelvas en agosto 14, 2008

Si tienen un Proyecto de C# que Originalmente fue creado en Visual Studio 2005, y recientemente han cambiado a Visual Studio 2008 y convertido su Proyecto a esta nueva Edición. 

El Proyecto en su mayor parte funcionara correctamente (compilara y correrá) pero de alguna manera cuando manden llamar un OpenFileDialog  o SaveFileDialog, este no funcionara del todo bien.

Supongamos que al dar click en un botón que lanza o manda llamar uno de estos 2 controles, puede que les  resulte un error como el siguiente:

“Current thread must be set to single thread apartment (STA) mode before OLE calls can be made. Ensure that your Main function has STAThreadAttribute marked on it. This exception is only raised if a debugger is attached to the process.”

Aunque su método principal este marcado como [STAThread].

Y a pesar de que su proyecto lo hayan cambiado a aplicación de Windows y no como una librería de Clases (dll) y esta aplicación no tenga referencia a la dll, la dll seguirá bloqueando la corrida del proyecto y causara esa excepción thread.

Pues la Solución consiste en unos cuantos pasos, solo necesitas borrar físicamente la dll del directorio en donde se depura y listo al volver a construir (Build) tu aplicación o tu clase esta dejara de provocar estos errores.

Posted in C Sharp | 2 Comments »

Lo nuevo en Visual C#

Posted by Jorge Vázquez Vuelvas en agosto 13, 2008

Lenguaje C# 3.0 Incluido en Visual Studio 2008

El lenguaje C# 3.0 y su compilador presentan varias características de lenguaje nuevas. Estas nuevas construcciones de lenguaje son útiles por separado en varios contextos y colectivamente para realizar consultas Language-Integrated Query (LINQ). Para obtener más información sobre LINQ, vea The LINQ Project.

Feature

Description

Matrices y variables locales con tipo implícito

Cuando se utiliza con variables locales, la palabra clave var indica al compilador que deduzca el tipo de los elementos de variable o matriz en la expresión situada en la parte derecha de la instrucción de inicialización.

Inicializadores de objeto

Habilita la inicialización de objetos sin llamadas explícitas a un constructor.

Inicializadores de colección

Habilita la inicialización de colecciones con una lista de inicialización en lugar de llamadas concretas a Add u otro método.

Métodos de extensión

Extienda las clases existentes con métodos estáticos que puedan invocarse mediante la sintaxis de método de instancia.

Tipos anónimos

Habilita la creación inmediata de tipos estructurados sin nombre que se pueden agregar a colecciones y a los que se puede tener acceso utilizando var.

Expresiones lambda

Habilita expresiones insertadas con parámetros de entrada que se pueden enlazar a delegados o árboles de expresión. Vea también Funciones anónimas (Guía de programación de C#).

Palabras clave de consultas

Palabras clave que especifican cláusulas en una expresión de consulta:

Cláusulas from

Cláusula where (opcional)

Cláusulas de ordenación (opcional)

Cláusula join (opcional)

Cláusula select o group

Cláusula into (opcional)

Propiedades autoimplementadas

Habilita la declaración de propiedades utilizando la sintaxis simplificada.

Definiciones de métodos parciales

Ahora los tipos parciales pueden contener métodos parciales.

 

Compilador de C# 3.0
Modificadores del compilador /win32Manifest y /noWin32Manifest.

Estos nuevos modificadores del compilador se utilizan para especificar niveles de ejecución solicitados para programas que se ejecutan en Windows Vista.

 IDE (Entorno de Desarrollo Integrado) de C# 3.0

Feature

Description

Compatibilidad con múltiples versiones

Visual Studio 2008 permite especificar una versión de .NET Framework para el proyecto, .NET Framework 2.0, 3.0, o 3.5. El destino de .NET Framework de una aplicación es la versión de .NET Framework requerida en un equipo para que la aplicación se ejecute en dicho equipo. Para obtener más información, consulte Especificar una versión concreta de .NET Framework.

Plantillas y tipos de proyecto nuevos

Se proporcionan varias plantillas de proyecto nuevas para Windows Presentation Foundation, Windows Communication Foundation y proyectos web. Para obtener más información, consulte Plantillas de proyecto en las ediciones de Visual C# y Plantillas de proyectos predeterminadas en Visual Studio.

Compatibilidad con IntelliSense para C# 3.0

El editor de código de Visual C# proporciona finalización de instrucciones e información rápida para ofrecer compatibilidad con las siguientes construcciones de lenguaje nuevas en C# 3.0:

Variables locales con tipo implícito

Expresiones de consulta

Métodos de extensión

Inicializadores de objeto/colección

Tipos anónimos

Expresiones lambda

Métodos Partial

Para obtener más información, consulte IntelliSense para Visual C#.

Compatibilidad de refactorización para C# 3.0

Las características de refactorización, Cambiar nombre, Cambiar firma, Extraer métodoy Promocionar variable local, se han actualizado para ofrecer compatibilidad con las siguientes construcciones de lenguaje nuevas:

Expresiones de consulta

Métodos de extensión

Expresiones lambda

Además, la refactorización proporciona nuevas opciones y advertencias para ayudar a evitar las consecuencias imprevistas de una acción de refactorización. Para obtener más información, consulte Refactorización.

Formato del código

El editor de código admite opciones de formato para varias construcciones de lenguaje C# 3.0 nuevas, incluidas las expresiones de consulta. Para obtener más información, consulte Formato, C#, Editor de texto, Opciones (Cuadro de diálogo).

Organizar instrucciones Using

El editor de código de Visual C# ofrece una forma sencilla de ordenar y quitar declaraciones using y extern.

 

Posted in C Sharp | Leave a Comment »

Que es C#

Posted by Jorge Vázquez Vuelvas en agosto 12, 2008

 

Origen y necesidad de un nuevo lenguaje

C# Es un lenguaje de propósito general diseñado en el año 2001 por Microsoft para su plataforma .NET. Sus principales creadores son Scott Wiltamuth y Anders Hejlsberg, éste último también conocido por haber sido el diseñador del lenguaje Turbo Pascal y la herramienta RAD Delphi.

 

Aunque es posible escribir código para la plataforma .NET en muchos otros lenguajes, C# es el único que ha sido diseñado específicamente para ser utilizado en ella, por lo que programarla usando C# es mucho más sencillo e intuitivo que hacerlo con cualquiera de los otros lenguajes ya que C# carece de elementos heredados innecesarios en .NET. Por esta razón, se suele decir que C# es el lenguaje nativo de .NET

 

La sintaxis y estructuración de C# es muy parecida a la de C++ o Java, puesto que la intención de Microsoft es facilitar la migración de códigos escritos en estos lenguajes a C# y facilitar su aprendizaje a los desarrolladores habituados a ellos. Sin embargo, su sencillez y el alto nivel de productividad son comparables con los de Visual Basic.

 

Un lenguaje que hubiese sido ideal utilizar para estos menesteres es Java, pero debido a problemas con la empresa creadora del mismo -Sun-, Microsoft ha tenido que desarrollar un nuevo lenguaje que añadiese a las ya probadas virtudes de Java las modificaciones que Microsoft tenía pensado añadirle para mejorarlo aún más y hacerlo un lenguaje orientado al desarrollo de componentes.

 

En resumen, C# es un lenguaje de programación que toma las mejores características de lenguajes preexistentes como Visual Basic, Java o C++ y las combina en uno solo. El hecho de ser relativamente reciente no implica que sea inmaduro, pues Microsoft ha escrito la mayor parte de la BCL usándolo, por lo que su compilador es el más depurado y optimizado de los incluidos en el .NET Framework SDK

 

 

Posted in C Sharp | 1 Comment »