ce contrôle a un bogue dans la méthode get de la propriété Date, chaque fois que la date est lue dans la zone de texte, la valeur du format de date n'est pas prise en compte. Voici une ligne exacte de la méthode get de propriété Date qui jette une exception:
DateTime time = DateTime.Parse(this.dateTextBox.Text, this.Culture);
la raison pour laquelle vous obtenez une date actuelle est que les caches de contrôle toutes les exceptions sont des rendements date dans le cas où l'un est survenu.
Alors que faites-vous, en plus de trouver un autre contrôle ou demander au fournisseur de réparer celui-ci. La solution de contournement consiste à obtenir la date directement à partir de la zone de texte de contrôle sans utiliser sa propriété Date par réflexion et l'analyser. Voici un exemple de la façon dont vous pouvez le faire:
TextBox textBox = (TextBox)DatePicker.GetType().InvokeMember("dateTextBox",
BindingFlags.GetField | BindingFlags.Instance | BindingFlags.NonPublic,
null, DatePicker, null);
if (textBox != null)
{
DateTimeFormatInfo format = (new CultureInfo(DatePicker.Culture.Name)).DateTimeFormat;
format.ShortDatePattern = DatePicker.DateFormat;
DateTime date = DateTime.Parse(textBox.Text, format);
Console.WriteLine(date.ToString());
}
espérons que cette aide, ce qui
Juste d'intérêt avez-vous une copie du code source à GMDatePicker. J'essaie de trouver une copie. –