C#winformのユーザーコントロールに2つのテキストボックスを配置しました。txtFrom
およびtxtTo
。2つのtextbox.textを比較したいのですが、txtTo
未満の場合はtxtFrom
エラープロバイダーが表示されます。私はどのように行いますか?
質問する
3164 次
1 に答える
2
エラープロバイダーと何かを比較することはありません。エラープロバイダーは、コントロールにコントロールに関連するエラーがあることを示すだけです。
- ErrorProviderコンポーネントをフォームに追加します
- 比較
txtFrom.Text
してtxtTo.Text
(たとえば、検証イベント中) - テキストが少ない場合(私はあなたにとって何を意味するのかわかりません)、それから電話してください
errorProvider1.SetError(txtTo, "Text is less than txtFrom")
、そうでなければ電話してくださいerrorProvider1.SetError(txtTo, "")
比較方法:
errorProvider1.SetError(txtFrom, "");
errorProvider1.SetError(txtTo, "");
int fromValue;
int toValue;
if (!Int32.TryParse(txtFrom.Text, out fromValue)
{
errorProvider1.SetError(txtFrom, "Integer number required");
return;
}
if (!Int32.TryParse(txtTo.Text, out toValue)
{
errorProvider1.SetError(txtTo, "Integer number required");
return;
}
if (toValue < fromValue)
{
errorProvider1.SetError(txtTo, "To is less than From");
return;
}
NumericUpDown
テキストの解析を避けるために、コントロールの使用も検討してください。
于 2012-11-17T10:41:59.407 に答える