开发者

Is there a way to get the scrollbar height and width?

开发者 https://www.devze.com 2023-01-06 16:06 出处:网络
I\'m trying to get the height and width of the scrollbars that are displayed on a ListView.Is there an easy way to do this?I did some google\'ing and it looks like it might be a syste开发者_高级运维m

I'm trying to get the height and width of the scrollbars that are displayed on a ListView. Is there an easy way to do this? I did some google'ing and it looks like it might be a syste开发者_高级运维m setting. I'm just not sure where to look.


Yes, it is a system setting. Use SystemInformation.HorizontalScrollBarHeight and SystemInformation.VerticalScrollBarWidth.

Namespace: System.Windows.Forms


On .Net CF, where SystemInformation.HorizontalScrollBarHeight and SystemInformation.VerticalScrollBarWidth don't exist, some P/Invoke is required:

public sealed class Native
{
    public static Int32 GetVerticalScrollbarWidth()
    {
        return GetSystemMetrics(SM_CXVSCROLL);
    }

    public Int32 GetHorizontalScrollbarHeight()
    {
        return GetSystemMetrics(SM_CYHSCROLL);
    }

    [DllImport("coredll.dll", SetLastError = true)]
    public static extern Int32 GetSystemMetrics(Int32 index);

    public const Int32
        SM_CXVSCROLL = 2,
        SM_CYHSCROLL = 3;
}
0

精彩评论

暂无评论...
验证码 换一张
取 消