Untitled

 avatar
unknown
plain_text
3 months ago
4.3 kB
6
Indexable
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace ValidWeb
{
    public class User
    {
        public string Name { get; set; }
        public string Surname { get; set; }
        public string School { get; set; }
        public string Age { get; set; }
        public List<string> Languages { get; set; }

        public User(string name, string surname, string school, string age, List<string> languages)
        {
            Name = name;
            Surname = surname;
            School = school;
            Age = age;
            Languages = new List<string>(languages);
        }
    }

    public partial class Forma1 : System.Web.UI.Page
    {
        private List<User> storedUsers;

        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["Users"] == null)
            {
                Session["Users"] = new List<User>();
            }

            storedUsers = (List<User>)Session["Users"];

            if (DropDownList1.Items.Count == 0)
            {
                DropDownList1.Items.Add("-");
                for (int i = 14; i <= 25; i++)
                {
                    DropDownList1.Items.Add(i.ToString());
                }
            }

            FillTable();
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            string name = TextBox1.Text.Trim();
            string surname = TextBox2.Text.Trim();
            string school = TextBox3.Text.Trim();
            string age = DropDownList1.SelectedValue;

            RequiredFieldValidator1.IsValid = !HasNumber(name);
            RequiredFieldValidator2.IsValid = !HasNumber(surname);
            RequiredFieldValidator3.IsValid = !HasNumber(school);

            if (!RequiredFieldValidator1.IsValid || !RequiredFieldValidator2.IsValid || !RequiredFieldValidator3.IsValid)
            {
                return;
            }

            List<string> languages = new List<string>();
            for (int i = 0; i < CheckBoxList1.Items.Count; i++)
            {
                if (CheckBoxList1.Items[i].Selected)
                {
                    languages.Add(CheckBoxList1.Items[i].Value);
                }
            }

            storedUsers.Add(new User(name, surname, school, age, languages));
            Session["Users"] = storedUsers;

            FillTable();
        }

        private bool HasNumber(string text)
        {
            foreach (char c in text)
            {
                if (!char.IsLetter(c))
                {
                    return true;
                }
            }
            return false;
        }

        protected void Button2_Click(object sender, EventArgs e)
        {
            storedUsers = new List<User>();
            Session["Users"] = storedUsers;
            FillTable();
        }

        private void FillTable()
        {
            Table1.Rows.Clear();

            TableRow headerRow = new TableRow();
            headerRow.Cells.Add(new TableCell { Text = "Nr." });
            headerRow.Cells.Add(new TableCell { Text = "Vardas" });
            headerRow.Cells.Add(new TableCell { Text = "Pavardė" });
            headerRow.Cells.Add(new TableCell { Text = "Mokykla" });
            headerRow.Cells.Add(new TableCell { Text = "Amžius" });
            headerRow.Cells.Add(new TableCell { Text = "Programavimo kalbos" });
            Table1.Rows.Add(headerRow);

            int index = 1;
            for (int i = 0; i < storedUsers.Count; i++)
            {
                TableRow row = new TableRow();
                row.Cells.Add(new TableCell { Text = index.ToString() });
                row.Cells.Add(new TableCell { Text = storedUsers[i].Name });
                row.Cells.Add(new TableCell { Text = storedUsers[i].Surname });
                row.Cells.Add(new TableCell { Text = storedUsers[i].School });
                row.Cells.Add(new TableCell { Text = storedUsers[i].Age });
                row.Cells.Add(new TableCell { Text = string.Join(", ", storedUsers[i].Languages) });
                Table1.Rows.Add(row);
                index++;
            }

            TotalLabel.Text = "Iš viso užregistruota: " + storedUsers.Count;
        }
    }
}
Editor is loading...
Leave a Comment