[NETCF] Datagrid remplacer scrollbar par page up/down
Bonjour,
Je souhaiterais remplacer la scrollbar verticale créée automatiquement dans un datagrid par par des touches page up, page down (et donc un défilement par page lors de l'appuie sur l'une de ces touches).
J'ai réussi à supprimer la scrollbar, j'ai également pu récupérer l'index de la première ligne visible du datagrid par :
Code:
1 2 3 4
|
FieldInfo m_firstVisibleRow = dg.GetType().GetField("m_irowVisibleFirst", BindingFlags.NonPublic | BindingFlags.GetField | BindingFlags.Instance);
MessageBox.Show(m_firstVisibleRow.GetValue(dg).ToString()); // affiche la premiere ligne visible du datagrid |
Le problème c'est que je ne sais pas comment ensuite procéder pour mes page up et page down à partir de cette valeur...
J'ai bien testé ça :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
nextPage = ((int)m_firstVisibleRow.GetValue(dg) + (dg.VisibleRowCount - 1) * 2);
if (nextPage < dgRowCount) //dgRowCount : nombre total de ligne du datagrid
{
dg.CurrentRowIndex = nextPage;
}
else
{
dg.CurrentRowIndex = dgRowCount-1;
} |
mais cela ne fonctionne pas, je ne comprends pas pourquoi je me retrouve à la 3eme page et non a la 2eme 8O ce qui pour moi n'est pas très logique... mais ma logique étant souvent très illogique je me trompe peut être...
Je précise que c'est pour le compact framework.