Chanom First
Chanom First

Reputation: 1136

How to Set Value in DataGridViewTextBoxCell in WindowForm c#

I can't set Value in DataGridViewTextBox

Here is my code

DataGridViewTextBoxColumn tbCol = new DataGridViewTextBoxColumn();
DataGridViewTextBoxCell tbCell = new DataGridViewTextBoxCell();
tbCell.Value = "1";
tbCol.CellTemplate = tbCell;
tbCol.Name = "qtySelect";
tbCol.HeaderText = "เลือกจำนวน"; 

gridProduct.Columns.Add(tbCol);

When I Run Textbox are added but it's a blank textbox

any one can help me.

Thank.

Upvotes: 1

Views: 2574

Answers (2)

ehh
ehh

Reputation: 3480

DataGridViewTextBoxColumn tbCol = new DataGridViewTextBoxColumn(); DataGridViewTextBoxCell tbCell = new DataGridViewTextBoxCell();

        // Used for the appearence of the cell, it doesn't mean that there is a correlation between the cell and the column (see below ***)
        tbCell.Style.ForeColor = Color.Blue;
        tbCol.CellTemplate = tbCell;

        tbCol.Name = "qtySelect";
        tbCol.HeaderText = "Header";

        int colIndex = gridProduct.Columns.Add(tbCol);
        const int rowNumber = 0;    // define which row you want

        //Pay attention that you may need to add rows before writting to the cell
        //const int rowNumber = 1;
        //gridProduct.Rows.Add();            

        gridProduct.Rows[rowNumber].Cells[colIndex].Value = "Value for cell";

        //*** If you want to work with the cell itself, you first need to get a reference to it
        //tbCell = gridProduct.Rows[0].Cells[0] as DataGridViewTextBoxCell;
        //tbCell.Value = "1"; // and then you can overwrite the value

Upvotes: 1

Jéf Bueno
Jéf Bueno

Reputation: 434

You should do this:

yourdatagridview["columnName", rowindex].Value = "Your value";

Upvotes: 1

Related Questions