- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
//чОткая функция которая возвращает количество отображаемых узлов
//в дереве без скролла
int GetcountVisibleNodesInList()
{
int res = 0;
if (FormGUI.c_MainWorkSpaseTree.Nodes.Count == 0)
{
this.FormGUI.c_MainWorkSpaseTree.Nodes.Add(new TreeNode());
res = this.FormGUI.c_MainWorkSpaseTree.Height / FormGUI.c_MainWorkSpaseTree.getNodeRectangle(this.FormGUI.c_MainWorkSpaseTree.Nodes[0]).Height;
this.FormGUI.c_MainWorkSpaseTree.Nodes[0].Remove();
}
else
{
res = this.FormGUI.c_MainWorkSpaseTree.Height / FormGUI.c_MainWorkSpaseTree.getNodeRectangle(this.FormGUI.c_MainWorkSpaseTree.Nodes[0]).Height;
}
//и незабываем воткнуть вычисленное значение в комбобокс
this.FormGUI.c_cmb_countRowsInPage.Text = (res - 4).ToString();
return res;
}
//пример использования функции
void FormGUI_Load(object sender, EventArgs e)
{
//возвращается интовое значение и ложится в комбобокс
GetcountVisibleNodesInList();
int CountRows = 0;
if (int.TryParse(FormGUI.c_cmb_countRowsInPage.Text, out CountRows))
{
_LastShowedRowNumber = 0;
GoToNextPage(); //там же комбобокс опять парсится
}
}
обратите внимание на обработчик загрузки формы.
Из нужного кода там только вызов GoToNextPage() в котором опять же парсим комбобокс