这是一个包含受训者信息的结构
ArrayList ar = new ArrayList();
这个Arraylist是为每个新的实习生提供库存
private void button1_Click(object sender, EventArgs e)
{
Stagaire stg = new Stagaire();
stg.nom = textBox1.Text;
stg.pre_nom = prenom.Text;
stg.date = date.Text;
stg.fillier = fill.Text;
stg.num = Convert.ToInt32(num.Text);
ar.Add(stg);
}
这是将Stagaire添加到Arraylist的代码
df['datetime'] = pd.to_datetime(df['YYYY-MO-DD'] + ' ' + df['HH-MI-SS_SSS'])
我如何在datagridview中显示任何Stagaire信息?
答案 0 :(得分:2)
使用class
代替struct
使用properties
代替fields
使用公认的命名约定。
public class Stagaire
{
public string Nom { get; set; }
public string PreNom { get; set; }
public string Date { get; set; }
public string Fillier { get; set; }
public int Num { get; set; }
}
使用强类型集合代替ArrayList
使用BindingList
自动跟踪集合中的项目
给它一个合适的名字。
BindingList<Stagaire> stagaires = new BindingList<Stagaire>();
使用数据绑定而不是手动填充。
dataGridView.DataSource = stagaires;
由于数据绑定,DataGridView将自动更新。
private void AddButton_Click(object sender, EventArgs e)
{
var stagaire = new Stagaire();
// Here the code of filling properties
stagaires.Add(stagaire);
}
此外,我会将Date
属性类型更改为DateTime
。
public DateTime Date { get; set; }
并使用DateTimePicker
作为日期输入。
stagaire.Date = dateTimePicker.Value;
答案 1 :(得分:0)
对于datagridview你必须添加一个新的stagaire并影响ar [i]到nes stagaire然后你必须添加一个新的stagaire infvery到datagridview
Stagaire sgt = new Stagaire();
for (int i = 0; i < ar.Count; i++)
{
sgt = (Stagaire)ar[i];//ar[i] is an Object so you have to convert it (caste) to the Stagaire type
dataGridView1.Rows.Add(sgt.nom,sgt.pre_nom,sgt.date,sgt.num,sgt.fillier);
}