2017-10-02 1 views
-1

내가 다음과 같습니다 생성자와 "사람"클래스를 클릭추가 객체는

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 

namespace Programming_handin_2___Arrays 
{ 
public class Person 
{ 
    public string Name { get; set; } 
    public int Age { get; set; } 
    public string Password { get; set; } 

    public Person(string name, int age, string password) 
    { 
     this.Name = name; 
     this.Age = age; 
     this.Password = password; 
    } 

    public override string ToString() 
    { 
     return Name + ", " + Age + ", " + Password; 
    } 
} 
} 

또한 위의 변수를 추가하는 몇 가지 텍스트 상자와 함께 영문 페이지가 있습니다.

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
     <div> 
      Name:<br /> 
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
      <br /> 
      <br /> 
      Age:<br /> 
      <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
      <br /> 
      <br /> 
      Password:<br /> 
      <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox> 
      <br /> 
      <br /> 
      <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Add person" /> 
      <br /> 
      <br /> 
     </div> 
    </form> 
</body> 
</html> 

목표는 누군가가 양식을 채우고 버튼을 클릭 할 때마다 새로운 "사람"을 만드는 것입니다. "사람"이 페이지에 표시되어야합니다. 이것을 달성하는 가장 좋은 방법은 무엇입니까?

+0

마지막 부분이 페이지에 표시되고 있습니까? – lxxtacoxxl

+0

요청 수명을 설명하는 방법, 데이터가 여러 요청에 걸쳐 ASP.Net에서 유지되는 방법, 양식 작업 및 배열에 요소를 추가하는 것 (그 자체로 중요하지 않음)은 너무 까다로워 단일 질문에 맞지 않습니다. 지금 직면하고있는 문제의 범위를 좁히고 해당 질문을 대신 물어볼 수도 있지만 비슷한 질문을 먼저 찾아야합니다 (지금 당장은 힌트를주기 위해 중복으로 닫을 수 없습니다). –

+0

@AlexeiLevenkov OP는 각 개인 객체에 대해 페이지에 포함 된 요소를 표시하는 방법을 알고 싶어한다는 추측을 통해 가정합니다. – lxxtacoxxl

답변

0
List<Person> persons; 
protected void Page_Load(object sender, EventArgs e){ 

    if(!IsPostBack){ 
    List<Person> persons= new List<Person>(); 
    Session["personslist"]=persons; 
    }else{ 
    persons= (List<Person>)Session["personslist"]; 
    } 
} 

protected void Button1_Click(object sender, EventArgs e){ 
persons.Add(new 
Person(TextBox1.Text,int.parse(TextBox2.Text),TextBox3.Text)); 
} 
+0

"배열에 객체 추가"에 대한 대답은 전혀 사용하지 않습니다 ... –

0

이 질문은 이미이 사이트에 여러 개의 중복이 있으므로 모든 답변은 동일하며, 모든 답은 당신이 찾고있는 정확하게 할 수 있기 때문에 나는이 대답과의 링크가 포함됩니다. 게시하기 전에 조사를해야합니다. "동적으로 요소를 페이지 C#에 추가"하고 두 번째 것은 (자바 스크립트로 C# 바꾸기) 빠른 Google 검색이었습니다. 저의 빠른 Google 검색은 귀하가 원하는 것을 정확히 달성하는 데 도움이되는 여러 답변을 얻었습니다. 귀하가하려는 것과 동일한 것을 달성하기 위해 과거에 두 가지를 사용했다고 저는 믿습니다.

아이디어는 꽤 간단합니다. 기본적으로 Person 개체 컬렉션을 반복하고 루프가 완료 될 때까지 지정된 부모 요소에 요소를 추가합니다. 나머지는 스타일링에 이릅니다. 문제가있을 경우 새로운 질문을 시작해야합니다.

다음 스택 오버플로 게시물은 올바른 방향으로 당신을 얻을해야합니다

Dynamically add HTML to ASP.NET page

How to add HTML elements Dynamically (ASP.NET)

Can I dynamically add HTML within a div tag from C# on load event?

Create <div> and append <div> dynamically

HTML: Add elements dynamically using JS

자습서는 this이고 createElement 기능은 this 리소스입니다. JavaScript에서 사용 가능합니다.

+0

코드 유인물이 있어야합니다! :) – lxxtacoxxl