C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.         C# and The Unattached DataGridView, by M.C. Enrique...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.Acerca de mi.Titulado en la Maestría en Ciencias en Ciencias...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.                   Mi Diploma por mi Ponencia en el Institut...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.    «Inside the great field of the Programming, I own to off...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.ÍNDICEAcerca de mi. ...........................................
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.1. Objetivos logrados.1.1. Para el usuario final.           ...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.2. ¿Por qué el DataGridView como no atado, es decir, indepen...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.3. Especificando al DataGridView como no atado, al arrastrar...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.4. Cómo aparece la aplicación en la parte de diseño visual. ...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.5. Desglose de elementos de “arrastrar y soltar” en el formu...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.Button                                                      ...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.6. Cómo aparece la aplicación ejecutandose ante el usuario f...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.7. Cómo debe proceder el usuario final para seleccionar un r...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.8. Código fuente del Programa.// Inicio del código.using Sys...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.         {              label1.Text = "";              label...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.              row = new string[] { "37", "Product 7", "7000"...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.         private void button_Only_a_selected_row_Click(objec...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.              button1_Allow_to_Modify_data.Show();          ...
C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.               }          }          private void button1_de...
Upcoming SlideShare
Loading in …5
×

C# and the unattached data gridview, by m.c. enrique ruiz díaz

500 views

Published on

Cómo se programa un DataGridView no atado en C#.

M.C. Enrique Ruiz Díaz.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
500
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

C# and the unattached data gridview, by m.c. enrique ruiz díaz

  1. 1. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. All Rigths Reserved. Con título y cédula profesional 5632071 en la Maestría en Ciencias de la Computación. Egresado del Instituto Tecnológico de Orizaba, Ver. (México). Página 1 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  2. 2. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.Acerca de mi.Titulado en la Maestría en Ciencias en Ciencias de la Computación, Cédula profesional 5632071. Egresado del InstitutoTecnológico de Orizaba, Ver., México. Antes, me Titulé en la Licenciatura en Informática, Cédula profesional 4046033. Egresadodel Instituto Tecnológico de Tuxtepec, Oax., México, distinguiéndome además, por ser el mejor promedio de mi generación con98%.Bien, regresando al tema de mi Título de Maestría en Ciencias de la Computación, para subrayar que ésta, requirió el desarrollo deuna TESIS. Otro aspecto muy importante, fue que durante el desarrollo de mi Maestría escribí un ARTICULO, mismo que fueaceptado para publicación y con mi ponencia en el evento Primer Encuentro de Estudiantes en Ciencia de la Computación - E2C2ISBN-10:970-36-0404-8 e ISBN-13:978-970-36-0404-3 celebrado en el Instituto Politécnico Nacional, México, D.F. 2007. Página 2 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  3. 3. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. Mi Diploma por mi Ponencia en el Instituto Politécnico Nacional, México, D.F. 2007. Página 3 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  4. 4. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. «Inside the great field of the Programming, I own to offer my knowledge of the Structured Programming Paradigm. This,principally by means of the Language C. Also, I own to offer my knowledge of the Object-Oriented Paradigm. This, by means of The Languages Java and Visual C#. Majorly». M.C. Enrique Ruiz Díaz. Página 4 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  5. 5. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.ÍNDICEAcerca de mi. ............................................................................................................................................................. 2ÍNDICE ........................................................................................................................................................................ 51. Objetivos logrados. ................................................................................................................................................ 6 1.1. Para el usuario final. ......................................................................................................................................... 6 1.2 Para el programador. ........................................................................................................................................ 6 1.3. Comentario. ..................................................................................................................................................... 62. ¿Por qué el DataGridView como no atado, es decir, independiente, y no el atado?. ............................................ 73. Especificando al DataGridView como no atado, al arrastrarlo y soltarlo en la aplicación. ..................................... 84. Cómo aparece la aplicación en la parte de diseño visual. ...................................................................................... 95. Desglose de elementos de “arrastrar y soltar” en el formulario de la aplicación. ............................................... 106. Cómo aparece la aplicación ejecutandose ante el usuario final........................................................................... 127. Cómo debe proceder el usuario final para seleccionar un registro (renglón) o varios de estos a la vez. ............. 138. Código fuente del Programa. ............................................................................................................................... 14 Página 5 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  6. 6. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.1. Objetivos logrados.1.1. Para el usuario final. 1) Desplegar el instrumento DataGridView como un presentador de registros (renglones) de información. 2) Permitirse el modificar datos. 3) Inhabilitar la posibilidad de modificar datos. 4) Indicar que sólo un registro puede ser seleccionado a la vez. 5) Indicar que múltiples registros pueden ser seleccionados. 6) Eliminar registros previamente seleccionados. 7) Habilitar el poder agregar registros. 8) Desplegar el contenido de registros seleccionados.1.2 Para el programador.A través del presente documento, el programador conocerá cómo codificar las instrucciones que permiten llevar a cabo las operaciones ya referidas enel punto 1.1. anterior.1.3. Comentario.Es el programador el que decide que facultades se otorgan al usuario final, y que facultades se reserva él. En el programa de ejemplo aquí mostrado, elusuario final recibió todas las facultades ya referidas. Página 6 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  7. 7. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.2. ¿Por qué el DataGridView como no atado, es decir, independiente, y no el atado?.La respuesta más obvia a esta pregunta es que el presente documento se enfocó en el DataGridView no atado, y no en el atadocomo objeto de estudio. Entonces se hace evidente que el DataGridView atado será objeto de otro estudio aparte. Bien, ahoradebo decir que el DataGridView no atado resulta atrayente porque atorga al Programador avispado (es decir, hábil para codificar)el control y los beneficios de esta poderosa herramienta enteramente a su responsabilidad.Por supuesto que conocer al DataGridView atado (ahora no estudiado) también es importante, pero ese DataGridView implicapara el programador otros compromisos (computacionalmente hablando) de los cuales debe estar muy bien documentado paraque no le resulte contraproducente. En consecuencia, como ya dije, si se sabe programamar bien, el presente estudio resulta serun comienzo conveniente. Página 7 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  8. 8. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.3. Especificando al DataGridView como no atado, al arrastrarlo y soltarlo en la aplicación. Insertando a través de arrastrar y soltar al DataGridView en la aplicación.Observe que al arrastrar y soltar el DataGridView en la aplicacón, no modificamos los datos de configuración queya inicialmente nos provee. Observe que el valor para «Choose Data Source» permanece como «none». Estoúltimo significa que el DataGridView no está atado a alguna fuente de datos. Página 8 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  9. 9. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.4. Cómo aparece la aplicación en la parte de diseño visual. La Aplicación, ante el usuario final. Página 9 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  10. 10. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.5. Desglose de elementos de “arrastrar y soltar” en el formulario de la aplicación.El desglose es de izquierda a derecha, y de arriba abajo. Tipo de elemento NombreButton Show_DataGridViewdataGridView dataGridView1Button button1_Allow_to_Modify_dataButton button_Do_not_Allow_to_modify_dataLabel label1Button button_Only_a_selected_rowButton button1_Allow_multiple_selection_of_rowsLabel label2Button button1_delete_selected_rows Página 10 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  11. 11. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.Button button1_Allow_to_add_rowsButton boton_Show_me_the_selected_rowLabel label3 Página 11 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  12. 12. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.6. Cómo aparece la aplicación ejecutandose ante el usuario final. La Aplicación en ejecución. Página 12 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  13. 13. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.7. Cómo debe proceder el usuario final para seleccionar un registro (renglón) o varios de estos a la vez. El DataGridView con tres registros seleccionados.Observe que al comienzo de cada registro (renglón) existe un pequeño recuadro, que provisionalmentellamaremos “celda para seleccionar”. Bien, si sólo se requiere seleccionar un registro, únicamente se requiere darun clic en la celda para seleccionar correspondiente. Ahora, si se requiere seleccionar más de un registro a la vez,entonces primero se oprime la tecla CONTROL y se conserva oprimida, con esto, ya se puede usar la referida celdapara seleccionar con los registros deseados. Página 13 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  14. 14. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz.8. Código fuente del Programa.// Inicio del código.using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;// Versión definitiva: hoy 28 December 2012.namespace GridView_1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) Página 14 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  15. 15. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. { label1.Text = ""; label2.Text = ""; } private void Show_DataGridView_Click(object sender, EventArgs e) { // Dos lineas siguientes: Para el DataGridView: Crear Columnas y nombres de sus columnas. int total_of_Columns = 5; string[] Columns_names = new string[] { "Product ID", "Product Name", "Product Price", "Product Category","Product Description" }; Create_Columns_to_DataGridView(total_of_Columns, Columns_names); // ************************************************************************** // Asunto siguiente: Agregar las filas al DataGridView, con datos. string[] row = new string[] { "31", "Product 1", "1000", "Babies", "Pañales" }; Add_newRow_to_DataGridView(row); row = new string[] { "32", "Product 2", "2000", "Electronics", "TV" }; Add_newRow_to_DataGridView(row); row = new string[] { "33", "Product 3", "3000", "Ladies", "clothes" }; Add_newRow_to_DataGridView(row); row = new string[] { "34", "Product 4", "4000", "Gentlemen", "clothes" }; Add_newRow_to_DataGridView(row); row = new string[] { "35", "Product 5", "5000", "Music", "CD" }; Add_newRow_to_DataGridView(row); row = new string[] { "36", "Product 6", "6000", "Movies", "DVD" }; Add_newRow_to_DataGridView(row); Página 15 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  16. 16. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. row = new string[] { "37", "Product 7", "7000", "Toys", "Balls" }; Add_newRow_to_DataGridView(row); row = new string[] { "39", "Product 9", "9000", "Spices", "Red peppers" }; Add_newRow_to_DataGridView(row); // *************************************************************************************** } private void Create_Columns_to_DataGridView(int cantidad, string[] Columns_names) { dataGridView1.ColumnCount = cantidad; for (int i = 0; i < cantidad; i++) { dataGridView1.Columns[i].Name = Columns_names[i]; } // El usuario no tiene permiso de agregar filas, con la siguiente - // opcion en false. dataGridView1.AllowUserToAddRows = false; } private void Add_newRow_to_DataGridView(string[] row) { dataGridView1.Rows.Add(row); } Página 16 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  17. 17. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. private void button_Only_a_selected_row_Click(object sender, EventArgs e) { dataGridView1.MultiSelect = false; label2.Text = "Present specification: Only a row."; button_Only_a_selected_row.Hide(); button1_Allow_multiple_selection_of_rows.Show(); } private void button1_Allow_multiple_selection_of_rows_Click(object sender, EventArgs e) { dataGridView1.MultiSelect = true; label2.Text = "Present specification: Multiple rows."; button1_Allow_multiple_selection_of_rows.Hide(); button_Only_a_selected_row.Show(); } private void button1_Allow_to_Modify_data_Click(object sender, EventArgs e) { dataGridView1.ReadOnly = false; label1.Text = "Present specification: yes, to Modify"; button1_Allow_to_Modify_data.Hide(); button_Do_not_Allow_to_modify_data.Show(); } private void button_Do_not_Allow_to_modify_data_Click(object sender, EventArgs e) { dataGridView1.ReadOnly = true; label1.Text = "Present specification: Not, to Modify"; button_Do_not_Allow_to_modify_data.Hide(); Página 17 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  18. 18. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. button1_Allow_to_Modify_data.Show(); } private void boton_Show_me_the_selected_row_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count > 0) { string datos = ""; int Cantidad_celdas = dataGridView1.SelectedRows[0].Cells.Count; for (int i = 0; i < dataGridView1.SelectedRows.Count; i++) { for (int t = 0; t < Cantidad_celdas; t++) { try { datos = datos + dataGridView1.SelectedRows[i].Cells[t].Value.ToString() + ", "; } catch { //si el usuario deja una celda vacía, - // el sistema lo considera null, y no - // como string = " ". datos = datos + " "; } // fin del try...catch }// fin del ciclo for más interno. MessageBox.Show("Fila seleccionada: " + " datos: " + datos); datos = ""; } // fin del primer ciclo for. El más externo. } else { MessageBox.Show("Usuario: actualmente, no tiene fila alguna seleccionada."); Página 18 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/
  19. 19. C# and The Unattached DataGridView, by M.C. Enrique Ruiz Díaz. } } private void button1_delete_selected_rows_Click(object sender, EventArgs e) { if (dataGridView1.SelectedRows.Count == 0) { MessageBox.Show("Usuario: No se pueden borrar filas, porque actualmente no hay fila(s)seleccionadas."); return; } if (dataGridView1.SelectedRows.Count == dataGridView1.Rows.Count) { dataGridView1.Rows.Clear(); } foreach (DataGridViewRow row in dataGridView1.SelectedRows) { dataGridView1.Rows.Remove(row); } } private void button1_Allow_to_add_rows_Click(object sender, EventArgs e) { // Se otorga al usuario, la capacidad de agregar filas. MessageBox.Show("Usuario: Se le habilitó la capacidad de agregar registros."); dataGridView1.AllowUserToAddRows = true; } }}// Fin del código. Página 19 de 19Visit: https://sites.google.com/site/mcenriqueruizdiaz/Also: http://sites.google.com/site/enriqueruizdiaz/

×