无法选中带有复选框的数据绑定数据吉德视图



我有一个绑定到 SQL Server 中的数据库的datagridview,我在第一列上放了一个复选框,当我运行程序时,无法选中该复选框。为什么会这样? 数据库和复选框之间有冲突吗? 请帮助我非常需要它。 谢谢

我尝试将datagridview属性设置为 ReadOnly=true ,将编辑启用为 true,但这些都不起作用

C# Winform 代码:

private void dgvSummaryUnserviceable_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
    try
        {
            if (dgvSummaryUnserviceable.Rows.Count == 0)
            {
                MessageBox.Show("No Items to Load.Choose Transaction type first", "Field Required", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (cboTranstype.Text == "PAR")
                {
                    foreach (DataGridViewRow row in dgvSummaryUnserviceable.Rows)
                    {
                        bool isSelected = Convert.ToBoolean(row.Cells["colUnserviceable"].Value);
                        if (isSelected)
                        {
                            //getting the specific cell value in datagridview
                            if (dgvSummaryUnserviceable.SelectedCells.Count > 0)
                            {
                                emp_idno = row.Cells[5].Value.ToString();
                                MessageBox.Show("" + emp_idno);
                                T_type = cboTranstype.Text;
                                prop_no = row.Cells[9].Value.ToString();
                                qty = Convert.ToInt32(row.Cells[10].Value);
                            }
                        }
                        else
                        {
                            int iRows = dgvSummaryUnserviceable.Rows.Count;
                            int iCheckedCount = 0;
                            for (int i = 0; i < iRows; i++)
                            {
                                int iChecked = 0;
                                iChecked = Convert.ToInt32(dgvSummaryUnserviceable.Rows[i].Cells["colUnserviceable"].FormattedValue);
                                iCheckedCount += iChecked;
                            }//for
                            if (iCheckedCount == 0)
                            {
                                MessageBox.Show("Select first the Items you want to Transfer", "Field Required", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                                return;
                            }//if
                        }//else
                    }//foreach
                }//cboTranstype
            }//else
        }//try
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "Try Catch Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }

这是我的完整代码。 复选框未绑定到数据库,我只是将其添加到设计中,但我想使用它 我在 DataGridView 上特定记录的选择器,其中一些列绑定到数据库[数据网格视图的屏幕截图]

这是我的屏幕截图。在 DataGridView 上加载记录后,我将单击该复选框,但当我这样做时,它无法选中。

复选框和数据网格视图

如果要在datagridview中编辑数据,则需要设置Read-only属性为false属性Enable并且属性为datagridview的true

您可以设置属性三个不同的图层 1.全数据网格视图 2.关于列 3.行

在您的情况下,如果您想要第 1 列可以编辑铰孔而不是编辑,那么(在完整的数据网格视图上 Readonly = false(,然后对于剩余的列使属性为 true。 像这样

dataGridView1.Columns[1].ReadOnly = true;

dataGridView1.Columns[2].ReadOnly = true;

更多信息

最新更新