1

Grid Control の垂直スクロール バーが表示されているか非表示になっているかを検出する方法はありますか。または、非表示または表示の場合に値を返すプロパティ? 私は現在開発エクスプレスグリッドコントロールを使用していますが、誰でも答えを提供できますか? 私は数時間探していましたが、答えが見つかりません。

4

3 に答える 3

1

これは DevExpress グリッド ビューの古いバージョン用です。また、標準の反射を使用して null を取得しました。

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;
    }
于 2014-06-04T08:33:55.060 に答える
0
    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");
            }
        }
    }

出典: DevExpress

于 2014-05-28T08:45:23.810 に答える