public void RefreshVisible()
{
int lo = DataCount - ButtonCount;
if(si < 0) {
int mc = Math.Min(DataCount, ButtonCount);
for(int i = 0; i < mc; i++) {
buttonsText[i].Text = vText[i];
}
si = 0;
return;
}
if(lo > 0) {
int nsi = (int)((lo + 1) * scrollBar.ScrollRatio);
nsi = Math.Max(0, Math.Min(lo, nsi));
if(si != nsi) {
si = nsi;
for(int i = 0; i < ButtonCount; i++) {
buttonsText[i].Text = vText[i + si];
}
}
}
}