简体   繁体   中英

How to Detect if Grid Control vertical scroll bar is visible or Hidden. Dev express

is there a way to detect if Grid Control vertical scroll bar is visible or Hidden. or a property which return a value if it hidden or visible? i'm currently using dev express grid control can anyone provide an answer? i have been searching for a couple of hours but i cant find the answer.

this is for older versions of DevExpress grid view. I also got null using standard reflection.

private GridViewInfo GetViewInfo(GridView view)
    {
        FieldInfo fi;

        fi = typeof(GridView).GetField("fViewInfo", BindingFlags.NonPublic | BindingFlags.Instance);

        GridViewInfo griInfo = fi.GetValue(view) as GridViewInfo;
        if (griInfo != null)
         {
          // check if scrollbar
          if (griInfo.VScrollBarPresence == ScrollBarPresence.Visible)
          {
              Console.WriteLine("Scrollbar visible");
          }
          else
          {
              Console.WriteLine("Scrollbar not visible");
          }
        }
        return griInfo;
    }

Grid Control does not provide such property. Why don't you use XtraScrollableControl?

    private void button1_Click(object sender, EventArgs e)
    {
        // create a long list to force scrollbar
        List<String> tempList = new List<string> { "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value", "1 value" };
        gridControl1.DataSource = tempList;

        // check if scrollbar is visible
        GridViewInfo viewInfo = gridView1.GetViewInfo() as GridViewInfo;
        if (viewInfo != null)
        {
            // check if scrollbar
            if (viewInfo.VScrollBarPresence == ScrollBarPresence.Visible)
            {
                Console.WriteLine("Scrollbar visible");
            }
            else
            {
                Console.WriteLine("Scrollbar not visible");
            }
        }
    }

Source: DevExpress

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM