0

セルを新しい行の必須セルにする方法を探しています。行は7つのセルで構成されます。私が抱えている問題は、ユーザーが新しい行に入ると、必要な数を含まなければならない非常に重要な最初のセルをスキップできることです。ユーザーが新しい行を入力した場合、2番目のセルにさらに情報を追加する前に、その行の必要なセルを最初に入力する必要があります。行の検証とDBNullのチェックなどを試しましたが、何も機能しません。最善の解決策は、新しい行が入力されると、最初のセルが編集モードにジャンプすることです。番号を入力すると、次のセルを編集できます。それ以外の場合は編集できません。ユーザーが追加をキャンセルした場合、現在の行は追加されません。

あらゆる種類の提案や情報のためのThx!

4

3 に答える 3

1

私は自分で簡単な解決策を見つけました。CellBeginEditで最初のセルが新しい行に入力されているかどうかを確認してください。そうでない場合、他のセルは編集できないため、新しい行は追加されません。他の誰かもそれを必要とすることができますように。ご助力ありがとうございます!

private void dgvUsers_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
        {
            if (e.ColumnIndex != 0)
            {
                if ((e.RowIndex == dgvUsers.NewRowIndex) && (dgvUsers[0, e.RowIndex].Value == null))
                {
                    e.Cancel = true;
                }
            }
        }
于 2012-09-27T14:01:20.290 に答える
0

説明した内容に基づいて、UserAddedRow イベントを使用してイベントを取得し、新しい行が正しく設定されていることを確認できます。

Rows プロパティを介して DataGridViewRowCollection 内のデータを取得できます。

于 2012-09-26T16:52:45.067 に答える