翻页算法

             m_PageCount = m_Items.Length / m_Buttons.Length;//最大页码数

            if((m_Items.Length % m_Buttons.Length) != 0)

            {

                ++m_PageCount;

            }

  void PageDown_Click(object sender, EventArgs e)

        {

            m_CurrentPageNo = (m_CurrentPageNo + 1) % m_PageCount;//当前页码(0m_ PageCount

            this.RefreshWithPageNo(m_CurrentPageNo);

        }

 

        void PageUp_Click(object sender, EventArgs e)

        {

            m_CurrentPageNo = (m_CurrentPageNo + m_PageCount - 1) % m_PageCount;

            this.RefreshWithPageNo(m_CurrentPageNo);

        }

 

        private void RefreshWithPageNo(int pageNo)

        {

            int offset = pageNo * m_Buttons.Length;

            for(int i = 0; i < m_Buttons.Length; ++i)

            {

                if (i + offset < m_Items.Length)

                {  

                    m_Buttons[i].Visible = true;

                    m_Buttons[i].BMText = m_Items[i + offset].ItemName;

m_Buttons[i].Enabled = !((m_Buttons[i].BMText == null) || (m_Buttons[i].BMText.Trim().Length == 0));

                }

                else

                {

                    m_Buttons[i].Visible = false;

                }

            }

        }

 

你可能感兴趣的:(翻页算法)