2017-11-08 11 views
-1

で検証します。datagridviewには事前定義された列があります。私は列を検証したい。異なる列で検証する必要がある列。私のカラム名はunit_id、batch_id、exp_month、exp_year、tax_rateです。必要な検証は、すべての列がヌルであってはならない、exp_monthとexp_dateの長さがそれぞれ2と4で、現在の日付より前でなければなりません。税率も2桁でなければなりません。 さらに、自動的に追加された最後の行は、NULL値とみなされるべきではありません。Datagridviewをc#


image of my *datagridview*

+1

通常は、のようなものを実装するだろうか? – Riv

答えて

0

は、私はよく理解していることがわからないんだけど、あなたは形式を適用したり、細胞内の形式を確認したい場合は、CellFormattingイベントを使用して、内部のやりたいことができます。あなたがこれまでに試してみました何

private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) 
    {   
     if (e.ColumnIndex == 0 || e.ColumnIndex == 1 || e.ColumnIndex == 2 || e.ColumnIndex == 3) 
     { 
      DataGridViewRow row = dataGridView1.Rows[e.RowIndex]; 
      DataGridViewCell cell = row.Cells[e.ColumnIndex];    
      if (string.IsNullOrEmpty((cell.Value).ToString())) MessageBox.Show("What you want"); 
     } 
    } 
+0

私は_cellvalidating_イベントを試してみました。 –

+0

'batch_id'がexempleのためにnullの場合はどうしますか?行を追加したくない場合は、追加する前に確認してください。置換値が必要な場合は、 'cellformatting'が適切な方法でしょうか? – Gadsweb

+0

最初の4行は必須で、nullの場合はエラーメッセージまたはメッセージボックスに表示する必要があります。私は新しい人ですので、可能であれば正しいコードを入力してください。 –