Как программно добавить кнопку в вид сетки и назначить ее для определенной функции выделенного кода?

Во время выполнения я создаю DataTable и использую вложенные циклы for для заполнения таблицы. Эту таблицу я позже назначаю как DataSource для gridview, а в RowDataBound я присваиваю значение каждой ячейке. Я хочу знать, как я могу дать каждой ячейке кнопку и назначить эту кнопку функции codebehind. У меня будет 12 кнопок, и каждая из них будет содержать разные значения. Я бы предпочел, чтобы все они вызывали одну и ту же функцию с каким-то событием, которое хранит специфичное для ячейки значение.

Это код, где создается таблица:

protected void GridViewDice_RowDataBound(object sender, GridViewRowEventArgs e)
{


    DataTable diceTable = _gm.GetDice(_gameId);
    for (int i = 0; i < GameRules.ColumnsOfDice; i++)
    {
        if(e.Row.RowIndex > -1)
        {
            /*This is where I'd like to add the button*/
            //e.Row.Cells[i].Controls.Add(new Button);
            //e.Row.Cells[i].Controls[0].Text = specific value from below

            //This is where the specific value gets input
            e.Row.Cells[i].Text = diceTable.Rows[e.Row.RowIndex][i].ToString();
        }

    }
}

Я хотел бы обработать нажатие кнопки примерно так:

protected void DiceButton_Click(int column, int row, int value)
{
    //Do whatever
}

Какие-либо предложения?

Ответы на вопрос(3)

Ваш ответ на вопрос