0

DataGridView.CurrentCellプロパティがそうでなくnullても、nullそのプロパティに値を持つことは可能RowIndexですか? もしそうなら、どうすればこれを防ぐことができますか?

追加情報: この値は、現在選択されている行のインデックスをクラス フィールドに格納しておくSelectionChangedために、イベントでチェックされます。DataGridView

コードは次のとおりです。

private void dgTraffic_SelectionChanged(object sender, EventArgs e)
{
    try
    {
        if (dgReport.CurrentCell != null)
            actualRow = dgReport.CurrentCell.RowIndex;
    }
    catch (NullReferenceException ex)
    {
    #if DEBUG
        MessageBox.Show("Error on dgTraffic_SelectionChanged:\n" + ex.Message);
    #endif
    }
}

どういうわけか、RowIndex プロパティを参照する行で未処理の NullReferenceException を取得したので、try-catch を追加しましたが、それがどのように発生するのかわかりません。ちなみに、メソッド名は「dgTraffic」で、メソッドの本体で使用されているオブジェクトはdgReportです。実際にはそのように設定されています。これは、dgReport の SelectionChanged イベントに使用されているメソッドです。

4

0 に答える 0