私は、3つのドロップダウンリストを含むUserコントロールを持っています:日、月、年。それは日記のようなものです。それはプライベートフィールドを持っていますASP.NET - すべてのページロード時にユーザーコントロールフィールドの値が変更される
private bool _isValidDate = false;
ドロップダウンリストの最初の項目は、 "Day"、 "Month"、 "Year"です。 SelectedIndexChangedイベントでは、私は、選択したすべてのインデックスが0より大きいかどうかを確認し、それが本当なら、私は、このようなようdropdownlistsの値を持つ新しいDateTimeオブジェクトを作成しよう:私は前に、このコントロールを使用するフォームの
try
{
DateTime date=new DateTime(int.Parse(ddlYear.SelectedItem),
ddlMonth.SelectedIndex,
ddlDay.SelectedIndex);
_isValidDate=true;
}
catch {_isValidDate=false;}
私はIsValidDateプロパティをチェックし、それが偽であればユーザに警告します。私が正しい日付を設定してボタンを押すのは初めてですが、IsValidDateプロパティがtrueであるため警告が表示されませんが、2回目にクリックするとIsValidDateプロパティがfalseに戻り、警告が表示されます日付が有効です。ページの読み込み時に、コントロールの_isValiddateフィールドがデフォルト値のfalseに設定されるたびに、それがわかります。この問題をどうすれば処理できますか?