亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從第二種形式的列表中刪除數據

從第二種形式的列表中刪除數據

C#
慕哥9229398 2022-11-13 13:42:58
我有一個表格,我在其中讀取包含學生信息的 csv 文件,該文件有兩列StudentNumber和Mark. 我想讓用戶單擊第一個表單上的一個按鈕,然后轉到另一個名為的表單deleteRecord。在此表單上,用戶將鍵入 aStudentNumber和 a Mark,并且與它們對應的記錄將從列表中刪除兩條信息。由于我是 C# 的新手,我不確定如何去做,所以我們將不勝感激。我的列表:public static List<string> studentInfo = new List<string>();我將該列表中的所有數據存儲在一個名為 lstMarks 的列表框中我還想向用戶確認記錄已成功刪除。
查看完整描述

1 回答

?
縹緲止盈

TA貢獻2041條經驗 獲得超4個贊

如果所有數據都存儲在列表中,只需使用 LINQ 并為列表中的每個學生添加一個數字作為索引。


首先,您需要創建一個類并將其(我推薦)放在一個文件夾中。 它看起來如何。


然后你必須把屬性放在類中:


public class Student

{

    public int StudentNumber {get; set;}

    public int Mark {get; set;}

    public int Index {get; set;}

}

現在用列表添加另一個類:


partial class MainWindow : Window

{

    private List<Student> _studentInfo = new List<Student>()

    {

        new Student() {Index = 0, StudentNumber = 0, Mark = 0}

        // ...

    }

然后在 deleteRecord 代碼的頂部添加 using 以及文件夾和兩個類的名稱:


using ExampleFolder.Class;

您需要調用 Student 類才能修改 StudentNumber 以及 Mark 和 Index。


Student studentInfo = new Student();

    int iIndex = 0;


    var req = from info in studentInfo

              where info.StudentNumber == txtStudentNumber && info.Mark == txtMarks

              select info.Index; // Starts with 0 for the first student in the list

    foreach(var num in req)

    {

        iIndex = num;

    }

    studentInfo.Remove(studentInfo[iIndex]);


    MessageBox.Show("Deleted!");


查看完整回答
反對 回復 2022-11-13
  • 1 回答
  • 0 關注
  • 125 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號