良い日。DataGridviewの最初の列に文字列が含まれているかどうかを確認する
私は、データグラムビューにID番号を入力するコードを書いています。追加する前に、 "名前"が既にdatagridviewに存在するかどうかをチェックする必要があります。そうであれば、それはそれをdatagridviewに追加せず、メッセージボックスを表示します。
以下Name | ID Number
Thomas | 10000000
Cesar | 10000001
Kathrina | 10000002
は、私が働いているコードです:以下
はどのように見えるかのDataGridViewのアイテムです。文字列s1とs2はまだ "名前"列に "Thomas"が入っていても、まだデータグリッドビューにコピーされています。
string s1 = "Thomas";
string s2 = "10000003";
if (dataGridView1 != null)
{
foreach (DataGridViewRow item in dataGridView1.Rows)
{
if (item.Cells[0].Value != null && item.Cells[0].Value.ToString() != s1)
{
string newline = s1 + "," + s2;
string[] values = newline.Split(',');
this.dataGridView1.Rows.Add(values);
}
else
{
MessageBox.Show("Name already exists in the database");
}
}
}
私のコードには何がないのか分かりますか?
いつも助けて頂き、ありがとうございます。
ここで、 'newline'は定義されていますか? –
"item.Cells [0] .Value.ToString()"の結果をデバッガにチェックインします。これが問題ない場合は、デバッガで "item.Cells [0] .Value.ToString()!= s1"の結果もチェックインしてください。これが問題でない場合は、もう一度見てください:スペースはありますか?値をコピーし(値を右クリックしてコピー)、これをメモ帳にコピーします。これはOKですか? "(item.Cells [0] .Value.ToString()。Equals(s1、StringComparison.InvariantCultureIgnoreCase)))" –
こんにちはRufusのようなcomparsionを試してください。私はそれを忘れて申し訳ありません。私は今すぐ追加しました。ありがとうございました。 – thompogi