Не могу понять, как преобразовать строки класса в сетку данных
Я пытаюсь получить "firstName, lastName, assocID и т. Д." отображать в таблице данных в моей форме. Я новый программист / сценарист, детка, извините, если это глупый вопрос. Я просто не знаю, как вызвать associateList.firstName к читаемой записи сетки данных.
Я хотел бы, чтобы решетка данных использовала каждый сотрудник в associateList, если это возможно. Рассматривал базовый счетчик по индексу как-то.
Другие отзывы о том, как я пишу свой код, также приветствуются. Я новичок и самоучка.
Короче говоря : Я хочу, чтобы сотрудники отображали в таблице данных, используя столбцы для разделения информации.
Имя сетки данных - dataGridAssociates в форме окна.
namespace Associate_Tracker
{
public partial class Form1 : Form
{
public class Associate
{
//No idea wtf {get; set;} does but I read that I need it?
public string firstName { get; set; }
public string lastName { get; set; }
public string assocRFID { get; set; }
public int assocID { get; set; }
public bool canDoDiverts { get; set; }
public bool canDoMHE { get; set; }
public bool canDoLoading { get; set; }
}
public Form1()
{
InitializeComponent();
}
private void buttonAddAssoc_Click(object sender, EventArgs e)
{
#region Datagrid Creation -- Name: dt
DataTable dt = new DataTable();
dt.Columns.Add("First Name");
dt.Columns.Add("Last Name");
dt.Columns.Add("RFID");
dt.Columns.Add("Associate ID#");
dt.Columns.Add("Diverts");
dt.Columns.Add("MHE");
dt.Columns.Add("Loading");
dataGridAssociates.DataSource = dt;
#endregion
//First & Last name splitter
string allValue = textBoxAssocName.Text;
string firstNameTemp = String.Empty;
string lastNameTemp = String.Empty;
int getIndexOfSpace = allValue.IndexOf(' ');
for (int i = 0; i < allValue.Length; i++)
{
if (i < getIndexOfSpace)
{
firstNameTemp += allValue[i];
}
else if (i > getIndexOfSpace)
{
lastNameTemp += allValue[i];
}
}
firstNameTemp = firstNameTemp.Trim(); // To remove empty spaces
lastNameTemp = lastNameTemp.Trim(); // To Remove Empty spaces
//End splitter
int assocIDTemp; //TryParse succeeds
bool assocIDparse; //Bool for TryParse
//Try Parsing Associate ID to an integer
//Includes catch -> return
assocIDparse = int.TryParse(textBoxAssocID.Text, out assocIDTemp);
if (assocIDparse == false)
{
MessageBox.Show("Please use only numbers in the AssocID input");
return;
}
var associateList = new List<Associate>();
associateList.Add(new Associate
{
firstName = firstNameTemp,
lastName = lastNameTemp,
assocID = assocIDTemp,
canDoDiverts = checkBoxDiverts.Checked,
canDoMHE = checkBoxMHE.Checked,
canDoLoading = checkBoxLoading.Checked,
});
textBoxAssocID.Clear();
textBoxAssocName.Clear();
textBoxRFID.Clear();
}
}
}