1

私は radGridView で作業しており、それに割り当てられたデータを作成しています。つまり、列と行を作成しています (データソースに割り当てていません)。グリッドにデータを追加した後、複数の行をチェックするために使用する必要があるチェックボックス列を追加します (複数選択のアイデアと同じですが、checkboxcolumn を使用します)。

したがって、この列はどのデータにもバインドされないため、その値は実行時に割り当てられる必要があります。このチェックボックスの列の値を取得しようとすると、チェックされていても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ではなく別のボタンクリックでチェックボックス列の値を取得するにはどうすればよいですか?

4

1 に答える 1

2

null値を取得する方法はわかりませんが、私のテストでは、チェックボックスが割り当てられている場合、常に値があります。

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);
        }
    }
}

小さなサンプルと、問題を再現する方法に関する情報を提供していただけますか?

于 2013-03-28T10:45:13.913 に答える