【问题标题】:Setting AutoGenerateColumns property from VS 2012从 VS 2012 设置 AutoGenerateColumns 属性
【发布时间】:2013-08-12 00:08:07
【问题描述】:

刚才我遇到了这个奇怪的问题,我想知道我在 VS2012 中是否有什么东西可以解决。我正在使用 MDI Windows 窗体,我有这个dataGridView,我从数据库中检索数据,然后使用数据库中的数据设置网格的dataSource 属性。但是即使我使用一个旧项目作为这个项目的脚手架,现在我得到了我在 VS2012 中设计的dataGridView,在它旁边我从数据库中获取数据,就好像它是我的dataGridView 设计的一部分一样,除了标题列是数据库中列的名称。

但是我做了一点研究,发现实际上这个问题很容易通过将AutoGenerateColumns 属性设置为 false 来解决。我在 VS2012 设计器中找不到这个属性。现在我正在使用这个:

        dgvClients.AutoGenerateColumns = false;
        dgvClients.DataSource = mainGridInfoList;

load 事件中,但我更喜欢使用设计器(当然,如果可能的话)并从我的代码中删除这一行 - dgvClients.AutoGenerateColumns = false;。问题是我看不到 dataGridView 的确切名称的属性,所以我想知道 - 名称是否已更改?这会有点奇怪,因为我仍然可以在我的代码中使用它,或者 IDE 设计器从来没有办法做到这一点,它必须明确地写在源代码中?

附言

对于这个特定问题,使用 IDE 设计器并不是一个很好的决定(至少我是这么认为的),但这里有一个打印屏幕可以向您展示如何从 VS2012 设计器设置此属性。

【问题讨论】:

    标签: c# .net winforms visual-studio-2012


    【解决方案1】:

    我在文档中发现了一些可能对您的问题有所帮助的内容。

    来自DataGridView.AutoGenerateColumns Property

    注意:

    在 Windows 窗体设计器中自动设置数据源 将 AutoGenerateColumns 属性设置为 false 并生成代码 为数据源中的每个属性添加并绑定一列。代码 在设计时生成的相当于手动添加的 以下示例中显示的代码。它不一样 在运行时自动生成列,当 AutoGenerateColumns 属性设置为 true。

    【讨论】:

    • 谢谢。我实际上想知道如何从 IDE 设计器中准确设置它,但这似乎不是完成此任务的最佳方式,至少我发现您提供的信息非常有用,所以只需添加此属性所在位置的打印屏幕VS2012,但我认为使用提供的信息。
    【解决方案2】:

    这是一个问题,因为如果开发人员不注意它,桌子就会乱七八糟。我只是通过在类构造函数中设置属性来解决,以确保它是否保留了设计器

        private SeniorsOnlineForm()
        {
            InitializeComponent();
            seniorsOnlineGridView.AutoGenerateColumns = false;
        }rewrites its source.
    

    【讨论】:

      猜你喜欢
      • 2012-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多