radGridview中的复选框列值

时间:2013-03-28 09:59:04

标签: c# winforms datagridview telerik

我正在使用radGridView并且我正在构建分配给它的数据,我的意思是我正在创建列和行(不分配给数据源)。将数据添加到网格后,我添加了一个复选框列,用于检查多行(与多选想法相同,但使用复选框列),

因此该列不绑定任何数据,其值应在运行时分配。 当我尝试检索此复选框列值时,即使已经检查它也是null,我使用此方法更新其值,但它没有用完:

   private void radGridView1_ValueChanged(object sender, EventArgs e)
        {
            if(radGridView1.CurrentCell!=null)
                if(radGridView1.CurrentCell.ColumnInfo is GridViewCheckBoxColumn)
                    radGridView1.TableElement.Update(GridUINotifyAction.DataChanged);
        }

我应该怎样做才能使复选框列的值不在valueChanged上,而是在另一个按钮上点击?

1 个答案:

答案 0 :(得分:2)

我不确定你是如何得到空值的,但是,在我的测试中,如果分配了复选框,它们总是有值:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        radGridView1.Columns.Add(new GridViewCheckBoxColumn() { Name = "CheckBoxCol" });
        radGridView1.Rows.Add(false);
        radGridView1.Rows.Add(true);
        radGridView1.Rows.Add(false);
        radGridView1.Rows.Add(true);
    }

    private void button1_Click(object sender, EventArgs e)
    {
        foreach (GridViewRowInfo row in radGridView1.Rows)
        {
            Console.WriteLine(row.Cells["CheckBoxCol"].Value);
        }
    }
}

您能否提供一些小样本以及如何重现该问题的信息?