我可是森森呢 2023-03-18 19:35 采纳率: 96.3%
浏览 33
已结题

WinForm窗体继承表格,无法修改属性

我创建了一个窗体,里面有DataGridView,并设置为public。
然后创建窗体2,继承上面的窗体,然后我发现我不能对DataGridView进行修改,设计器的所有属性都是灰色的。还有个控件BindingNavigator也是一样的问题。

有什么解决办法可以让我直接在设计器内进行操作,虽然可以代码改,但那也太麻烦了

  • 写回答

3条回答 默认 最新

  • MarkHan_ 2023-03-18 20:27
    关注

    该回答引用GPTᴼᴾᴱᴺᴬᴵ
    这是因为继承的窗体2并没有将DataGridView和BindingNavigator的访问修饰符设为public,导致无法在设计器中进行修改。

    解决方法:

    1. 在窗体2的.Designer.cs文件中,将DataGridView和BindingNavigator的访问修饰符改为public。

    2. 在窗体2的.cs文件中,添加以下代码,以使设计器中的属性修改可以生效。

    public new DataGridView DataGridView1
    {
        get { return base.DataGridView1; }
        set { base.DataGridView1 = value; }
    }
    
    public new BindingNavigator BindingNavigator1
    {
        get { return base.BindingNavigator1; }
        set { base.BindingNavigator1 = value; }
    }
    
    

    这样就可以在设计器中修改继承的DataGridView和BindingNavigator控件的属性了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 8月9日
  • 已采纳回答 8月1日
  • 创建了问题 3月18日