1
これは私のプログラムの現在のクリップです。つまり、datagridviewはデータテーブルに接続されていないため、データビューグリッド上で何かを変更すると、データテーブルに反映されません。そのため、datagridviewの任意の編集をatleast datatableに反映させることができますか? (あなたのケースでは、テーブル)、あなたはBindingSourceオブジェクトを使用する必要があり、基になるデータソースに変更を伝播するためにc#Datagridview bindingsource
OpenFileDialog OFD = new OpenFileDialog();
OFD.Title = "CSV File";
OFD.Filter = "Spreadsheet | *.csv";
OFD.ShowDialog();
FileHelperEngine engine = new FileHelperEngine(typeof(csv_SeatingPlan));
try
{
csv_SeatingPlan[] container = engine.ReadFile(OFD.FileName) as csv_SeatingPlan[];
CSV_Seating_Plan = new List<csv_SeatingPlan>(container);
DataTable DT_student_Records = new DataTable();
DT_student_Records.Columns.Add("Exam_Period", typeof(string));
DT_student_Records.Columns.Add("Exam_Code", typeof(string));
DT_student_Records.Columns.Add("Student_ID", typeof(string));
DT_student_Records.Columns.Add("Student_Name", typeof(string));
DT_student_Records.Columns.Add("Candidate_Number", typeof(string));
foreach (csv_SeatingPlan row in CSV_Seating_Plan)
{
DT_student_Records.Rows.Add(row.examperiod, row.exam_Code, row.id_Student, row.name_Student, row.candidatenum_Student);
}
DT_student_Records.DefaultView.Sort = "Candidate_Number ASC";
this.dataGridView1.DefaultCellStyle.Font = new Font("Tahoma", 11);
//bindingCSVSP.DataSource = DT_student_Records;
this.dataGridView1.DataSource = DT_student_Records;
私はdatatablesを取り除き、その代わりにdatagridview.source = list ...を持つリストバインディングを使用しましたが、私がdatagridviewを実行すると、それは私が既にdgv.readonly = false – Magikarp
この場合は、代わりにBindingListを使用してください。http://msdn.microsoft.com/en-us/library/ms132679.aspx – Maciej
バインディングリストでは、まだdatagridviewから値を編集できません:/今actioneventが必要ですか? – Magikarp