【问题标题】:Setting DataSource of DataGridView to null/false removes all default settings of DataGridView将 DataGridView 的 DataSource 设置为 null/false 会删除 DataGridView 的所有默认设置
【发布时间】:2013-03-28 19:30:00
【问题描述】:

在 DataGridView 中,当我设置 dataGridView.DataSource = nulldataGridView.DataSource = false 时,它会删除我设置的所有默认设置(属性)。

不将DataSource 设置为null 时的外观(见Mark 列实际上是DataGridViewComboBoxColumn

DataSource 设置为nullfalse 并在DataGridView 中加载项目后:

见这里Id 列是可见的,我默认设置为可见假(从属性窗口)。此外,Mark 列也从 DataGridViewComboBoxColumn 变为 DataGridViewTextBoxColumn

我真正想要的:我只想清除所有行(换句话说,我想在从数据库中删除记录后将 DataGridView 设置为空白)。喜欢这个:

我在这里做错了什么?

【问题讨论】:

  • 你试过dataGridView.Rows.Clear()吗?
  • @diogod - Clear() 给了我this error,因为有一列(Mark)带有DataGridViewComboBoxColumn
  • 和错误链接上建议的datatable.clear?
  • @diogod - 好的,工作正常。但现在我唯一的问题是:为什么将DataSource 设置为null/false 会删除所有默认设置。谢谢。
  • 那么DataSource = null 不会重置它们和它们的属性。我再次认为您的.AutoGenerateCOlumns = true 或您将其设置为False 未执行...

标签: c# datagridview .net-3.5


【解决方案1】:

设置datagridview.DataSource = null 不会重置/更改列或其属性

如果您有预定义的列(在设计器中),那么, 请检查datagridview.AutoGenerateColumns = False 的代码行是否会正确执行...

因为如果datagridview.AutoGenerateColumns = True更多的列将被添加到datagridview的预定义列中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-24
    • 1970-01-01
    相关资源
    最近更新 更多