使自定义 DataGridViewCell 只读

发布于 2024-09-01 00:27:16 字数 243 浏览 6 评论 0原文

我正在制作几个自定义 DataGridViewCell 类来处理 C# 应用程序中的各种情况。自定义类之一与只读数据关联,因此我尝试将单元格本身设置为只读。

我最初尝试在构造函数中设置 ReadOnly 属性,但这样做会导致 InvalidOperationException:“在将单元格添加到行之前无法设置单元格的 ReadOnly 属性。”

我应该重写哪个方法(即哪个方法将单元格添加到行中),以便我可以设置 ReadOnly 属性?

I am making several custom DataGridViewCell classes to handle various cases in my C# application. One of the custom classes is associated with read-only data, so I'm attempting to make the cell itself read-only.

I initially tried setting the ReadOnly property in the constructor, but doing so causes an InvalidOperationException: "ReadOnly property of a cell cannot be set before it is added to a row."

Which method should I override (i.e., which method adds the cell to the row), so that I can set the ReadOnly property?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

想你只要分分秒秒 2024-09-08 00:27:16

看起来获得所需行为(禁止用户编辑单元格中的数据)的方法是重写 DataGridViewCell 子类中的 EditType 属性:

    public override Type EditType
    {
        get
        {
            return null;
        }
    }

这可以防止单元格显示编辑控件,从而使单元格读取-仅有的。

It looks like the way to get the desired behavior (prohibiting the user from editing the data in the cell) is to override the EditType property in the DataGridViewCell sub-class:

    public override Type EditType
    {
        get
        {
            return null;
        }
    }

This keeps the cell from displaying an edit control, consequently making the cell read-only.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文