2013-05-10 4 views
0

학생 정보의 값을 보유하고있는 2 차원 배열이 있습니다. 나는 그들을 저장하는 3 상수가 있습니다. STUDENT_NAME, STUDENT_ID, MAJOR.배열에서 데이터를 어떻게 제거합니까?

이름이 내 배열입니다.

 names[Row,STUDENT_NAME] = txtStudentName.Text; 
     names[Row, STUDENT_ID] = txtStdBox.Text; 
     names[Row, MAJOR] = txtMJbox.Text; 

그리고 텍스트를 사용하여 목록 상자에 데이터를 추가합니다. 그래서 삭제 버튼을 클릭하여 목록 상자에서 선택한 값을 삭제할 수 있습니다. 그래서 어떻게 동시에 배열과 목록 상자에서 데이터를 삭제할 수 있습니다. 삭제)의 Foreach

MyListBox.Items.Clear(); 
foreach (Student StudentObj in List<Student>) 
{ 
    MyListBox.Items.Add(StudentObj.StudentName); 
} 

4를 사용하여 목록 상자 속으로 학생을 추가

+12

왜 캡슐화하기 위해 별도의 클래스 ('Student')를 생성하지 않고 다차원 문자열 배열을 사용하고 학생들을 저장하기 위해 List 을 사용합니까? –

+1

Jon Skeet에 동의합니다. 또한 .NET (WPF 또는 WinForm)을 사용하여 UI를 개발하는 경우 데이터 바인딩을 사용해야하므로 데이터는 하나의 컬렉션에만 존재합니다. 어떤 UI 프레임 워크를 사용하고 있습니까? – Whyaduck

+1

질문에 직접 대답하려면'names [Row, Student_NAME] = null; '이해야한다고 생각합니다. –

답변

3

1) 생성)에서 편집 한 학생 목록

List<Student> StudentList = new List<Student>(); 

3) 학생 클래스

public class Student 
{ 
    String StudentName {get;set;} 
    Int32 StudentId {get;set;} 
    String Major {get;set;} 
} 

만들기 2 학생

StudentList.RemoveAt(MyListBox.SelectedIndex); 
+0

나는 진지하게 인덱스에 의지하지 않을 것이다. * 항상 * 어떤 종류의 가짜 양방향 데이터 바인딩과 동일하다 ... –

+0

그래서 배열과 목록 상자에서 동시에 데이터를 제거 할 수 있을까? – Ben

+0

예, 시도해 볼 수 있습니다. –

관련 문제