2010-03-02 3 views
8

Ich frage mich, ob es möglich ist, ausgewählte Daten in einem DateTimePicker zu deaktivieren, so dass Benutzer sie nicht auswählen können. Ich weiß, dass es in Webformularen möglich ist, aber in Windows-Formularen kann ich das nicht. Wie kann ich das erreichen?Wie deaktiviere ich einige Daten in einem DateTimePicker-Steuerelement?

+0

oder andere Komponenten, die diese Funktion unterstützt, wäre auch in Ordnung – Aneef

+0

siehe http://StackOverflow.com/Questions/15172413/devexpress-dateedit-Customization-to-allow-only-specific-dates – andy

Antwort

1

Entwickler Express-Kontrollen sind in der Regel sehr flexibel und nach this support article können Sie erreichen, was Sie mit ihrer DateEdit Kontrolle tun wollen.

Die Kontrollkollektion kann von der folgenden Adresse bezogen werden: Over 60 Free Controls from DevExpress. (das kostenlose Angebot ist nicht mehr verfügbar)

Vergessen Sie nicht, den EULA zu lesen.

+0

Ich denke, ich würde gehe mit deexpress – Aneef

+0

Ich sehe keine frre Kontrollen dort, nur Versuche. – TaW

+0

Sie sind ein paar Jahre zu spät, sie scheinen diese freien Kontrollen nicht mehr anzubieten. Ich werde die Antwort aktualisieren. –

3

Die Leichtigkeit, mit der Sie dies tun können, hängt von den Daten ab, die Sie einschränken möchten. Wenn Sie beispielsweise nur einen Bereich gültiger Datumsangaben angeben möchten, können Sie die Grenzen mithilfe der Eigenschaften MinDate und MaxDate festlegen. Wenn Sie jedoch bestimmte Tage innerhalb eines Bereichs auswählen möchten (z. B. keine Wochenenden), gibt es dafür keine integrierte Methode.

Sie könnten entweder ein Steuerelement von Drittanbietern mit dieser Funktionalität finden, oder Sie könnten versuchen, es ein wenig zu hacken, indem Sie einen Ereignishandler zum ValueChanged Ereignis hinzufügen und die aktuelle Datumzeit auf den letzten Wert erzwingen müssen cachen), wenn der Benutzer etwas ausgewählt hat, das gemäß Ihrer Geschäftslogik illegal war ... aber das ist ein weniger als idealer Weg, dies zu tun.