【问题标题】:Datagrid Unwanted Scroll and Value ExceptionDatagrid 不需要的滚动和值异常
【发布时间】:2018-01-11 01:06:48
【问题描述】:

我用我的函数从数据库中获取数据没有问题。加载数据后,数据网格会滚动。(虽然我想在表单上显示 2 列,共 6 列)单击滚动时,出现错误,称为:

{"'321' 的值对 'Value' 无效。'Value' 应该介于 “最小值”和“最大值”。\r\n参数名称:值“}

我的代码显示为 belove;

if (dataSet.Tables.Count > 0 && dataSet.Tables[0].Rows.Count > 0) {
                metroGridGrup.DataSource = dataSet.Tables[0].DefaultView;
                metroGridGrup.AllowUserToAddRows = false;
                metroGridGrup.AllowUserToDeleteRows = false;
                for (var index = 0; index < metroGridGrup.Columns.Count; index++) {
                    metroGridGrup.Columns[index].Visible = false;
                }

                metroGridGrup.PerformLayout();

                metroGridGrup.Columns[0].Visible = true;
                metroGridGrup.Columns[0].HeaderText = "code"
                metroGridGrup.Columns[1].Visible = true;
                metroGridGrup.Columns[1].HeaderText = "value";

                metroGridGrup.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;

            }
            else {
                metroGridGrup.DataSource = null;
                MetroMessageBox.Show(this, "blabla", "blabla", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

【问题讨论】:

  • 这些行没有错误。 form.showdialog() 出现错误,将用户带到(下一个表单)此屏幕。
  • 完成@mjwills,希望对您有所帮助。
  • 请包含表单的所有源代码(cs文件和designer.cs文件)。
  • 不要拨打DataGridViewa GridViewDataGrid,反之亦然!!这是错误且令人困惑的,因为它们是不同的控件。总是用正确的名字来称呼事物!
  • 另外,您也不希望变量的名称与其类型完全相同,例如 dataSet

标签: c# forms winforms exception datagrid


【解决方案1】:

我解决了这个问题,您不应该将您的网格分配为 null,如下所示。避免使用空赋值。

metroGridGrup.DataSource = null;

【讨论】:

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