0

WinForm DataGridView をプログラムで更新しています

問題、DataGridViewCheckBoxCell が更新されません !!!

私はグーグルでした。ケースを知っているようですが、私が試したことはまだ役に立ちませんでした。

 private void InitializeFunctionsDataGrid()
    {


        System.Data.DataSet ds = func.GetFunctions();



        this.FunctionsDataGrid.DataSource = ds.Tables[0];
        this.FunctionsDataGrid.Columns["FunctionId"].Visible = false;
        this.FunctionsDataGrid.Columns["DESCRIPTION"].Width = 370;


         DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn();
            column.Name = "enable";
            column.HeaderText = "enable";
            column.FalseValue = 0;
            column.TrueValue = 1;
            FunctionsDataGrid.Columns.Add(column);



        foreach(DataGridViewRow row in FunctionsDataGrid.Rows)
        {

                 (( DataGridViewCheckBoxCell)row.Cells["enable"]).Value = 1;

        }

       FunctionsDataGrid.CurrentCell = null;

    }
4

2 に答える 2

0

enableバインドされていない列です。これは、セル値を自分で指定する必要があることを意味します。

VirtualModeプロパティを true に設定して、 CellValueNeededイベントを処理できます。
ユーザーがセルをチェックできるようにするには、CellValuePushedイベントを処理する必要があります。DataGridView FAQの一部である DataGridView サンプルには、データバインドされた列と共にバインドされていないチェックボックス列の特定の例があります。

于 2014-04-08T05:57:08.303 に答える
0

基本的に私にとって最も簡単な方法は、データソースを操作することでした。列を DataTable に追加し、データを入力しました。そして最後に this.FunctionsDataGrid.DataSource = ds.Tables[0];

于 2014-04-08T23:43:37.123 に答える