Guest User

Untitled

a guest
Jun 21st, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 7.22 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Web;
  4. using System.Web.UI;
  5. using System.Web.UI.WebControls;
  6. using System.Web.UI.HtmlControls;
  7. using System.Data;
  8.  
  9. namespace Exercicio
  10. {
  11.  
  12.     public partial class _Default : System.Web.UI.Page
  13.     {
  14.         DataTable randomStuff = new DataTable();
  15.  
  16.  
  17.         protected void Page_Load(object sender, EventArgs e)
  18.         {
  19.             Button1.Click += new EventHandler(Button1_Click);
  20.             Button2.Click += new EventHandler(Button2_Click);
  21.  
  22.             if (!IsPostBack)
  23.             {
  24.                 SetInitialRow();
  25.  
  26.                 rptNames.DataSource = randomStuff;
  27.                 rptNames.DataBind();
  28.             }
  29.            
  30.         }
  31.  
  32.         public void SetInitialRow()
  33.         {
  34.             randomStuff.Columns.Add("ID", typeof(int));
  35.             randomStuff.Columns.Add("Nome", typeof(string));
  36.             randomStuff.Columns.Add("Sobrenome", typeof(string));
  37.             randomStuff.Columns.Add("Idade", typeof(int));
  38.             randomStuff.Columns.Add("Cliente?", typeof(string));
  39.  
  40.             DataRow dr = null;
  41.             int cont = 1;
  42.  
  43.             for (cont = 1; cont <= 5; cont++)
  44.             {
  45.                 dr = randomStuff.NewRow();
  46.  
  47.                 dr["ID"] = cont;
  48.                 dr["Nome"] = "Nome" + cont;
  49.                 dr["Sobrenome"] = "Sobrenome" + cont;
  50.                 dr["Idade"] = 20 + cont;
  51.                 dr["Cliente?"] = "Sim";
  52.                 randomStuff.Rows.Add(dr);
  53.             }
  54.  
  55.             ViewState["CurrentTable"] = randomStuff;
  56.  
  57.             //randomStuff.Rows.Add(1, "Caroline", "Silva", "20", "Sim");
  58.             //randomStuff.Rows.Add(2, "Isabella", "Peres", "22", "Não");
  59.             //randomStuff.Rows.Add(3, "Júlia", "Maia", "19", "Não");
  60.             //randomStuff.Rows.Add(4, "Thaís", "Lopes", "19", "Sim");
  61.             //randomStuff.Rows.Add(5, "Camila", "Soares", "19", "Sim");
  62.  
  63.  
  64.         }
  65.  
  66.         protected void Button1_Click(object sender, EventArgs e)
  67.         {
  68.             //int linhas = randomStuff.Rows.Count + 1;
  69.             //randomStuff.Rows.Add(linhas, "teste", "teste", "20", "valor");
  70.  
  71.             rptDois.DataSource = randomStuff;
  72.             rptDois.DataBind();
  73.  
  74.         }
  75.  
  76.         protected void Button2_Click(object sender, EventArgs e)
  77.         {
  78.             //int linhas = randomStuff.Rows.Count - 1;
  79.             //randomStuff.Rows.Remove(randomStuff.Rows[linhas]);
  80.  
  81.             rptNames.DataSource = randomStuff;
  82.             rptNames.DataBind();
  83.         }
  84.  
  85.  
  86.         protected void rptDois_ItemDataBound(object sender, RepeaterItemEventArgs e)
  87.         {
  88.  
  89.             if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
  90.             {
  91.  
  92.                 int rowIndex = 0;
  93.                 if (ViewState["CurrentTable"] != null)
  94.                 {
  95.  
  96.                     DataTable dtCurrentTable = (DataTable)ViewState["CurrentTable"];
  97.                     DataRow drCurrentRow = null;
  98.  
  99.                     if (dtCurrentTable.Rows.Count > 0)
  100.                     {
  101.                         for (int i = 1; i <= dtCurrentTable.Rows.Count; i++)
  102.                         {
  103.                             //extract the values
  104.                             Label ID = (Label)rptNames.Items[rowIndex].FindControl("lblID");
  105.                             Label Nome = (Label)rptNames.Items[rowIndex].FindControl("lblNome");
  106.                             Label Sobrenome = (Label)rptNames.Items[rowIndex].FindControl("lblSobrenome");
  107.                             Label Idade = (Label)rptNames.Items[rowIndex].FindControl("lblIdade");
  108.                             Label Cliente = (Label)rptNames.Items[rowIndex].FindControl("lblCliente");
  109.                            
  110.  
  111.                            
  112.                             drCurrentRow = dtCurrentTable.NewRow();
  113.  
  114.                             drCurrentRow["ID"] = i + 1;
  115.                             dtCurrentTable.Rows[i - 1]["Nome"] = Nome.Text + i;
  116.                             dtCurrentTable.Rows[i - 1]["Sobrenome"] = Sobrenome.Text + i;
  117.                             dtCurrentTable.Rows[i - 1]["Idade"] = Idade.Text + i;
  118.                             dtCurrentTable.Rows[i - 1]["Cliente?"] = Cliente.Text;
  119.                             rowIndex++;
  120.  
  121.                         }
  122.  
  123.                      
  124.                         dtCurrentTable.Rows.Add(drCurrentRow);
  125.                        
  126.                         ViewState["CurrentTable"] = dtCurrentTable;
  127.  
  128.                         int linhas = randomStuff.Rows.Count + 1;
  129.                         dtCurrentTable.Rows.Add(linhas, "teste", "teste", "20", "valor");
  130.                        
  131.                         rptNames.DataSource = dtCurrentTable;
  132.                         rptNames.DataBind();
  133.                     }
  134.                 }
  135.                 else
  136.                 {
  137.                     Response.Write("ViewState is null");
  138.  
  139.                 }
  140.                
  141.                 DadosAntigos();
  142.  
  143.             }
  144.  
  145.  
  146.         }
  147.  
  148.         private void DadosAntigos()
  149.         {
  150.             int rowIndex = 0;
  151.             if (ViewState["CurrentTable"] != null)
  152.             {
  153.                 DataTable dt = (DataTable)ViewState["CurrentTable"];
  154.                 if (dt.Rows.Count > 0)
  155.                 {
  156.                     for (int i = 0; i < dt.Rows.Count; i++)
  157.                     {
  158.  
  159.                         Label ID = (Label)rptNames.Items[rowIndex].FindControl("lblID");
  160.                         Label Nome = (Label)rptNames.Items[rowIndex].FindControl("lblNome");
  161.                         Label Sobrenome = (Label)rptNames.Items[rowIndex].FindControl("lblSobrenome");
  162.                         Label Idade = (Label)rptNames.Items[rowIndex].FindControl("lblIdade");
  163.                         Label Cliente = (Label)rptNames.Items[rowIndex].FindControl("lblCliente");
  164.                            
  165.                        
  166.                         ID.Text = dt.Rows[i]["ID"].ToString();
  167.                         Nome.Text = dt.Rows[i]["Nome"].ToString();
  168.                         Sobrenome.Text = dt.Rows[i]["Sobrenome"].ToString();
  169.                         Idade.Text = dt.Rows[i]["Idade"].ToString();
  170.                         Cliente.Text = dt.Rows[i]["Cliente?"].ToString();
  171.                        
  172.                         rowIndex++;
  173.                     }
  174.                 }
  175.             }
  176.         }
  177.  
  178.         protected void rptNames_ItemDataBound(object sender, RepeaterItemEventArgs e)
  179.         {
  180.  
  181.             if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
  182.             {
  183.  
  184.                
  185.                     ((Label)e.Item.FindControl("lblID")).Text = ((DataRowView)e.Item.DataItem)[0].ToString();
  186.                     ((Label)e.Item.FindControl("lblNome")).Text = ((DataRowView)e.Item.DataItem)[1].ToString();
  187.                     ((Label)e.Item.FindControl("lblSobrenome")).Text = ((DataRowView)e.Item.DataItem)[2].ToString();
  188.                     ((Label)e.Item.FindControl("lblIdade")).Text = ((DataRowView)e.Item.DataItem)[3].ToString();
  189.                     ((Label)e.Item.FindControl("lblCliente")).Text = ((DataRowView)e.Item.DataItem)[4].ToString();
  190.                
  191.  
  192.             }
  193.  
  194.  
  195.         }
  196.  
  197.  
  198.     }
  199. }
Add Comment
Please, Sign In to add comment