Je souhaite mettre 2 boutons (up, down) pour passer d'une ligne à l'autre de mon datagrid. Pour l'instant j'utilise un currencymanager, qui navigue dans les enregistrment de mon dataset, mais la ligne courante du datagrid de se met pas a jour et reste figé sur sa position initiale.
J'ai passé l'apres midi à chercher la ligne de code manquante, mais sans succes.
Voilà mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 private CurrencyManager myCurrencyManager; private void Frm_Anim_4_AddVectors_Load(object sender, EventArgs e) { Cl_DataBase.Load_Anim_Vectors(); dg_KeyWords.DataSource = Cl_DataBase.Ds_All; dg_KeyWords.DataMember = "DT_Load_Anim_Vectors"; BindControl(); } private void btn_Up_Click(object sender, EventArgs e) { MovePrevious(myCurrencyManager); } private void btn_Down_Click(object sender, EventArgs e) { MoveNext(myCurrencyManager); } private void BindControl() { DataTable MyTable = Cl_DataBase.Ds_All.Tables["DT_Load_Anim_Vectors"]; myCurrencyManager = (CurrencyManager)this.BindingContext[MyTable]; myCurrencyManager.Position = 0; } private void MoveNext(CurrencyManager myCurrencyManager) { if (myCurrencyManager.Position == myCurrencyManager.Count - 1) { } else { myCurrencyManager.Position += 1; } } private void MovePrevious(CurrencyManager myCurrencyManager) { if (myCurrencyManager.Position == 0) { } else { myCurrencyManager.Position -= 1; } }
Partager