DataGridViewButtonCell
をColumn
に追加する必要があり、異なる名前で互いに名前を付ける必要があります。
ただし、テキストプロパティは見つかりませんでした。
誰でも助けてくれますか?
私はそうする
DataGridViewButtonCell b = new DataGridViewButtonCell();
b.Value = "name";
MainTable.Rows.Add(b);
そして、それは動作しません
whyメソッドが機能しないことを理解していないことは認めますが、回避策として必要なことを行うために以下を取得することができました:
DataGridViewButtonCell b = new DataGridViewButtonCell();
int rowIndex = MainTable.Rows.Add(b);
MainTable.Rows[rowIndex].Cells[0].Value = "name";
私の例では、1つの列(DataGridViewButtonColumn)だけがあると仮定しています。値を設定する限り、これを変更できますafter行を追加します。繰り返しますが、なぜそうなのかわかりません...
すべてのボタンで同じテキストを使用する場合は、 seColumnTextForButtonValue プロパティを使用します。
ボタンごとに異なるテキストが必要な場合は、 DataGridViewCell.Value propertyを使用します
あなたの答えが受け入れられたことは知っていますが、constructor
にこれらを追加しました。私が見逃していたのはUseColumnTextForButtonValue = true
public Form1()
{
InitializeComponent();
var editColumn = new DataGridViewButtonColumn
{
Text = "Edit",
UseColumnTextForButtonValue = true,
Name = "Edit",
DataPropertyName = "Edit"
};
dataGridView1.Columns.Add(editColumn);
}
これを使用して、最初はデフォルトのボタンですべてのボタンに同じテキストを表示します
DataGridView.Columns["Buttons_Index"].DefaultCellStyle.NullValue = "name";
試して
yourDataGridView.Rows[rowIndex].Cells[columnIndex].Value
列が1つだけで、それがデフォルトでボタン列である場合
MainTable.Rows.Add("Some text");
十分であろう。
あなたが探している DataGridViewCell.Value Property