首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从属性网格中删除描述区域?

如何从属性网格中删除描述区域?
EN

Stack Overflow用户
提问于 2015-04-26 22:15:29
回答 2查看 2.5K关注 0票数 6

Winforms有一个名为PropertyGrid的控件。PropertyGrid的显示元素是一个描述区域。默认情况下,它显示所选属性的名称。使用属性,程序员可以让它显示其他文本。我想把它完全移除。它占用了太多的空间,我不需要让它显示任何东西。我在对象模型中没有看到任何要删除它的属性。请张贴一个解决方案,以消除它。

下面是我所说的屏幕截图。我想移除红色的区域,这样"PercentComplete“就在帧的底部。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-27 01:12:28

尝试将PropertyGridHelpVisible属性设置为false

票数 17
EN

Stack Overflow用户

发布于 2015-04-27 00:34:18

在代码中添加以下内容:

代码语言:javascript
运行
复制
private static void ChangeDescriptionHeight(PropertyGrid grid, int height)
{
    if (grid == null) throw new ArgumentNullException("grid");

    foreach (Control control in grid.Controls)
    {
        if (control.GetType().Name == "DocComment")
        {
            var fieldInfo = control.GetType().BaseType.GetField("userSized",
                                                                BindingFlags.Instance |
                                                                BindingFlags.NonPublic);
            fieldInfo.SetValue(control, true);
            control.Height = height;
            return;
        }
    }
}

就这样叫它:

代码语言:javascript
运行
复制
    var progressTimerProperties = new ProgressTimerProperties();
    propertyGridProgressTimer.SelectedObject = progressTimerProperties;

    ChangeDescriptionHeight(propertyGridProgressTimer, 0);

注意到“0”了吗?它将描述区域的高度设置为0,有效地删除了它。如果你想,你可以走相反的方向,使它更大,以容纳更多的文本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29884237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档