Ao contrario da linguagem de programação Java o C# não possui um controle de grid para se trabalhar desconectado de um banco de dados, para realizar esta funcionalidade o C# permite usar o controle utilizado para exibição de arquivos do Windows Explorer para simular uma exibição de grade de dados utilizando Arrays ou Strings.
ListView
Representa um controle de lista de exibição do Windows , que exibe uma coleção de itens que podem ser exibidos usando um dos quatro pontos de vista de diferentes estilos contidos no sistema operacional: Ícones grandes, Ícones pequenos, lista, detalhes.
Exemplo:
Neste exemplo usamos um controle de lista para simular uma grade de dados com conteúdo baseado em caracteres literais.
C#
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace tabela_cs { public partial class Form1 : Form { // Declara componente ListView tabela; public Form1() { InitializeComponent(); } private void Form1_Shown(object sender, EventArgs e) { // Define propriedades do formulario this.Text = "DA - List View Control - Grid"; this.Size = new Size(500, 250); // Cria componente de lista tabela = new ListView(); // Define tamanho e localização tabela.Size = new Size(440, 170); tabela.Location = new Point(20, 20); // Define estilo de exibição tabela.View = View.Details; // Define estilo do conteudo tabela.GridLines = true; tabela.FullRowSelect = true; tabela.AllowColumnReorder = true; // Adiciona colunas tabela.Columns.Add("Album"); tabela.Columns.Add("Artista"); tabela.Columns.Add("Musica"); tabela.Columns.Add("Ano"); tabela.Columns.Add("Videoclip"); // Cria itens e conteudo de linhas ListViewItem item1 = new ListViewItem("Nevermind", 0); ListViewItem item2 = new ListViewItem("Ten", 1); ListViewItem item3 = new ListViewItem("Facelift", 2); ListViewItem item4 = new ListViewItem("Badmotorfinger", 3); ListViewItem item5 = new ListViewItem("Sweet Oblivion", 4); ListViewItem item6 = new ListViewItem("Core", 5); // Adiciona conteudo das colunas item1.SubItems.Add("Nirvana"); item1.SubItems.Add("Smell Like Teen Spirit"); item1.SubItems.Add("1991"); item1.SubItems.Add("Sim"); item2.SubItems.Add("Pearl Jam"); item2.SubItems.Add("Jeremy"); item2.SubItems.Add("1991"); item2.SubItems.Add("Sim"); item3.SubItems.Add("Alice in Chains"); item3.SubItems.Add("Man in the Box"); item3.SubItems.Add("1990"); item3.SubItems.Add("Sim"); item4.SubItems.Add("SoundGarden"); item4.SubItems.Add("Outshined"); item4.SubItems.Add("1991"); item4.SubItems.Add("Sim"); item5.SubItems.Add("Screaming Trees"); item5.SubItems.Add("Nearly I Lost You"); item5.SubItems.Add("1993"); item5.SubItems.Add("Sim"); item6.SubItems.Add("Stone Temple Pilots"); item6.SubItems.Add("Plush"); item6.SubItems.Add("1992"); item6.SubItems.Add("Sim"); // Arranja a grade de dados tabela.Items.AddRange(new ListViewItem[] { item1, item2, item3, item4, item5, item6 }); // Adiciona grade ao formulario this.Controls.Add(tabela); } } }