我面臨的一個問題從列表中獲取特定屬性
我有一個類
public class StudentDetails
{
int S_Detail_ID;
string address;
string email;
}
方含得到設定方法和IAM調用它收集List<StudentDetails>
的功能,並將其顯示在datagridview的問題是列表返回類的所有屬性,但我只想地址和電子郵件沒有s_detail_id
這裏是代碼的功能
private void btnAddNewRowInGrid_Click(object sender, EventArgs e)
{
List<StudentDetails> lstStudentDetails = GetStudentDetails();
lststudentDetails.Add(new StudentDetails()); //what to do here, studentDetails is returning all properties but i want only addres and email
dataGridView1.DataSource = lstStudentDetails;
}
和GetStudent jusst在datagridview的數行並添加一個新行
private List<StudentDetails> GetStudentDetails()
{
lstStudentDetails = new List<StudentDetails>();
foreach (DataGridViewRow row in dataGridView1.Rows)
{
lstStudentDetails.Add(row.DataBoundItem as StudentDetails);
}
return lstStudentDetails;
}
您可以a)隱藏一些datagridview列或b)使用Linq'.Select'查詢返回您想要顯示的屬性 - 使用哪個取決於您是否希望能夠從datagridview訪問學生ID? – stuartd
@stuartd感謝先生提供有用的解決方案。我跟着隱藏列只需添加行** dataGridView1.Columns [0] .Visible = false; **和問題解決了,但我想問你,如果你提供一些關於解決方案的細節b。早些時候我已經完成** lstStudentDetails.Select(address => sd.Address())。toList()**但它不能解決問題 –
@HassaanKhan爲什麼綁定列然後隱藏它們?最好不要綁定你不需要的列 –