🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.comp.lang.csharp
16 messages
16 total messages Started by qaz Thu, 23 Sep 2010 07:25
kontrolka do wpisywania daty
#21756
Author: qaz
Date: Thu, 23 Sep 2010 07:25
3 lines
1101 bytes
Czy muszę sam taką utworzyć n.p. z MasketTexBox'a ?
Nie ma gotowca sprawdzającego poprawność daty ?
qaz
Re: kontrolka do wpisywania daty
#21757
Author: Łukasz 'Maly' Ostrowski
Date: Thu, 23 Sep 2010 07:37
10 lines
1078 bytes
On Thu, 23 Sep 2010 09:25:47 +0200, qaz wrote:

> Czy muszę sam taką utworzyć n.p. z MasketTexBox'a ?
> Nie ma gotowca sprawdzającego poprawność daty ?

Może po prostu użyj DateTimePicker?

-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.      http://l3v.pl/
Re: kontrolka do wpisywania daty
#21758
Author: qaz
Date: Thu, 23 Sep 2010 07:53
17 lines
1766 bytes
Użytkownik "Łukasz 'Maly' Ostrowski" <maly@USUNnemo.pl> napisał w wiadomości 
news:1atet5p5molnl.tpksvqoc7ucn.dlg@40tude.net...
> On Thu, 23 Sep 2010 09:25:47 +0200, qaz wrote:
>
>> Czy muszę sam taką utworzyć n.p. z MasketTexBox'a ?
>> Nie ma gotowca sprawdzającego poprawność daty ?
>
> Może po prostu użyj DateTimePicker?
>
> -- 
> Pozdrawiam,
> Łukasz 'Maly' Ostrowski.      http://l3v.pl/

Tak też zrobiłem - ale wolałbym mieć możliwość wpisania z palca
Natomiast MaskedTexBox [Mask Description: Short date; Validating Type: 
DateTime] przyjmuje bez krzyku "22-22-2222" !
qaz 
Re: kontrolka do wpisywania daty
#21759
Author: Łukasz 'Maly' Ostrowski
Date: Thu, 23 Sep 2010 08:32
12 lines
1420 bytes
On Thu, 23 Sep 2010 09:53:36 +0200, qaz wrote:
> Tak też zrobiłem - ale wolałbym mieć możliwość wpisania z palca
> Natomiast MaskedTexBox [Mask Description: Short date; Validating Type: 
> DateTime] przyjmuje bez krzyku "22-22-2222" !

Proponuje sprawdzać rzeczy przed pisaniem. W trybie Format=Long
można wpisać datę z palca, tylko nazwę miesiąca zmieniać strzałkami,
a w trybie Short można wpisać całą datę z palca normalnie.

-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.      http://l3v.pl/
Re: kontrolka do wpisywania daty
#21760
Author: qaz
Date: Thu, 23 Sep 2010 09:14
20 lines
2026 bytes
Użytkownik "Łukasz 'Maly' Ostrowski" <maly@USUNnemo.pl> napisał w wiadomości 
news:2rtc9j3imx2u.5dtxw8rywlm8.dlg@40tude.net...
> On Thu, 23 Sep 2010 09:53:36 +0200, qaz wrote:
>> Tak też zrobiłem - ale wolałbym mieć możliwość wpisania z palca
>> Natomiast MaskedTexBox [Mask Description: Short date; Validating Type:
>> DateTime] przyjmuje bez krzyku "22-22-2222" !
>
> Proponuje sprawdzać rzeczy przed pisaniem. W trybie Format=Long
> można wpisać datę z palca, tylko nazwę miesiąca zmieniać strzałkami,
> a w trybie Short można wpisać całą datę z palca normalnie.
>
Nie do końca "normalnie", trzeba strzałkami przemieszczać się pomiędzy 
rokiem, miesiącem - albo znów czegoś nie wiem, no i wymusza format 
yyyy-mm-dd
MaskedTextBox jest bardziej "naturalny" tylko ...

-- 
pzdr
    qaz 
Re: kontrolka do wpisywania daty
#21761
Author: qaz
Date: Thu, 23 Sep 2010 09:33
11 lines
1599 bytes
Użytkownik "Łukasz 'Maly' Ostrowski" <maly@USUNnemo.pl> napisał w wiadomości 
news:2rtc9j3imx2u.5dtxw8rywlm8.dlg@40tude.net...
> Proponuje sprawdzać rzeczy przed pisaniem.

Dobra nie męczę dalej, proszę tylko o podpowiedź jak i gdzie ustawić 
System.Windows.Forms.DateTimePicker.CustomFormat na "dd.MM.yyyy" ?

-- 
pzdr
    qaz 
Re: kontrolka do wpisywania daty
#21762
Author: Łukasz 'Maly' Ostrowski
Date: Thu, 23 Sep 2010 09:45
19 lines
1578 bytes
On Thu, 23 Sep 2010 11:33:49 +0200, qaz wrote:

> Użytkownik "Łukasz 'Maly' Ostrowski" <maly@USUNnemo.pl> napisał w wiadomości 
> news:2rtc9j3imx2u.5dtxw8rywlm8.dlg@40tude.net...
>> Proponuje sprawdzać rzeczy przed pisaniem.
> 
> Dobra nie męczę dalej, proszę tylko o podpowiedź jak i gdzie ustawić 
> System.Windows.Forms.DateTimePicker.CustomFormat na "dd.MM.yyyy" ?

Ustaw:
  Format = Custom
oraz 
  CustomFormat = "dd.MM.yyyy"

Zakładam że pominałeś punkt pierwszy przez niedopatrzenie ;-).

-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.      http://l3v.pl/
Re: kontrolka do wpisywania daty
#21763
Author: qaz
Date: Thu, 23 Sep 2010 09:57
20 lines
1887 bytes
Użytkownik "Łukasz 'Maly' Ostrowski" <maly@USUNnemo.pl> napisał w wiadomości 
news:m9fgg3oluc96.1i10k1afortbi.dlg@40tude.net...
> On Thu, 23 Sep 2010 11:33:49 +0200, qaz wrote:
> Ustaw:
>  Format = Custom
> oraz
>  CustomFormat = "dd.MM.yyyy"

Dzięki, wielkie - czy można zrobić tak, by wszystkie DateTimePicker'y miały 
CustomFormat = "dd.MM.yyyy" ?
Sorry za lamerstwo - mam masę przyzwyczajeń z VFoxPro i trudności ze zmianą 
filozofii

> Zakładam że pominałeś punkt pierwszy przez niedopatrzenie ;-).
nie zrozumiałem :-)

-- 
pzdr
    qaz
Re: kontrolka do wpisywania daty
#21765
Author: Robert Winkler
Date: Thu, 23 Sep 2010 10:00
16 lines
1776 bytes
>> Proponuje sprawdzać rzeczy przed pisaniem.
>
> Dobra nie męczę dalej, proszę tylko o podpowiedź jak i gdzie ustawić 
> System.Windows.Forms.DateTimePicker.CustomFormat na "dd.MM.yyyy" ?

To bardzo proste, wystarczy tylko przekonać polski parlament
iż norma PN-EN 28601:2002 jest błędna i format zapisy daty zgodny z ISO 8601
nie powinien być stosowany w Polsce.
Kilka miesięcy po tym na Windows Updates powinna pojawić się aktualizacja
zmieniająca domyślny format zapisy daty
dla komputerów korzystających z polskich ustawień regionalnych.

-- 
____________
Pozdrawiam
Robert Winkler 
Re: kontrolka do wpisywania daty
#21766
Author: Robert Winkler
Date: Thu, 23 Sep 2010 10:05
26 lines
2183 bytes
>>> Proponuje sprawdzać rzeczy przed pisaniem.
>>
>> Dobra nie męczę dalej, proszę tylko o podpowiedź jak i gdzie ustawić 
>> System.Windows.Forms.DateTimePicker.CustomFormat na "dd.MM.yyyy" ?
>
> To bardzo proste, wystarczy tylko przekonać polski parlament
> iż norma PN-EN 28601:2002 jest błędna i format zapisy daty zgodny z ISO 
> 8601
> nie powinien być stosowany w Polsce.
> Kilka miesięcy po tym na Windows Updates powinna pojawić się aktualizacja
> zmieniająca domyślny format zapisy daty
> dla komputerów korzystających z polskich ustawień regionalnych.

Teraz na serio
zainteresuj sie klasami znajdujacymi się w System.Globalization
Wszystkie te informacje znajdują się w CultureInfo
jeśli chcesz zmienić standartowe ustawienia na swoje własne
to musisz utworzyć nowy obiekt tego typu
przedefiniować w nim te ustawienia
i przypisać do statycznego property Thread.CurrentThread.CurrentCulture w 
wątku UI

-- 
____________
Pozdrawiam
Robert Winkler 
Re: kontrolka do wpisywania daty
#21771
Author: qaz
Date: Thu, 23 Sep 2010 10:06
23 lines
2117 bytes
Użytkownik "Robert Winkler" <winkel@NOSPAMpoczta.fm> napisał w wiadomości 
news:i7f8fs$a47$1@inews.gazeta.pl...
>>> Proponuje sprawdzać rzeczy przed pisaniem.
>>
>> Dobra nie męczę dalej, proszę tylko o podpowiedź jak i gdzie ustawić 
>> System.Windows.Forms.DateTimePicker.CustomFormat na "dd.MM.yyyy" ?
>
> To bardzo proste, wystarczy tylko przekonać polski parlament
> iż norma PN-EN 28601:2002 jest błędna i format zapisy daty zgodny z ISO 
> 8601
> nie powinien być stosowany w Polsce.
> Kilka miesięcy po tym na Windows Updates powinna pojawić się aktualizacja
> zmieniająca domyślny format zapisy daty
> dla komputerów korzystających z polskich ustawień regionalnych.
>
> -- 
> ____________
> Pozdrawiam
> Robert Winkler

:-)
qaz 
Re: kontrolka do wpisywania daty
#21764
Author: Łukasz 'Maly' Ostrowski
Date: Thu, 23 Sep 2010 10:59
22 lines
1922 bytes
On Thu, 23 Sep 2010 11:57:48 +0200, qaz wrote:
> Dzięki, wielkie - czy można zrobić tak, by wszystkie DateTimePicker'y miały 
> CustomFormat = "dd.MM.yyyy" ?
> Sorry za lamerstwo - mam masę przyzwyczajeń z VFoxPro i trudności ze zmianą 
> filozofii

Wydziedziczyć sobie kontrolke po DateTimePicker, w c-torze bez
argumentowym ustawić sobie właściwości odpowiednie na 
Twoje wymarzone domyślne wartości i mieć z głowy. I zamiast
DateTimePickera zrzucać na formy MyCustomDateTimePicker 
oczywiście ;-).

>> Zakładam że pominałeś punkt pierwszy przez niedopatrzenie ;-).
> nie zrozumiałem :-)

Że nie ustawiłeś Format = Custom ;-).

-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.      http://l3v.pl/
ICQ: 148498663     GG: 2544385      AIM: malyzgora
GTalk: l3vi4than@gmail.com        ASTRA: L3viathan
Re: kontrolka do wpisywania daty
#21767
Author: Łukasz 'Maly' Ostrowski
Date: Thu, 23 Sep 2010 11:10
40 lines
2378 bytes
On Thu, 23 Sep 2010 12:05:10 +0200, Robert Winkler wrote:
> Teraz na serio
> zainteresuj sie klasami znajdujacymi się w System.Globalization
> Wszystkie te informacje znajdują się w CultureInfo
> jeśli chcesz zmienić standartowe ustawienia na swoje własne
> to musisz utworzyć nowy obiekt tego typu
> przedefiniować w nim te ustawienia
> i przypisać do statycznego property Thread.CurrentThread.CurrentCulture w 
> wątku UI

Jeżeli już to CurrentUICulture ;-). Przy czym to nie zadziała,
ponieważ DTP jest tylko shimem dla date time pickera z Common
Controls z WinAPI a CurrentThread.CurrentUICulture przekazuje 
tylko LCID przy setowaniu, a domyślny format krótkiej daty to
"2010-09-23", przynajmniej u mnie. 

Proof-of-concept:

[W wątku UI]
<code>
var ci = new CultureInfo("pl-PL");
ci.DateTimeFormat.ShortDatePattern = "dd.MM.yyyy";
Thread.CurrentThread.CurrentCulture = ci;
Thread.CurrentThread.CurrentUICulture = ci;
</code>

To nie przejdzie, customowy formatting string nie będzie 
używany przez DTP z Common Controls(bo w ogóle nie będzie
przekazany ;-) ).

Reference:
http://l3vi4than.pastebin.com/xMG7x9kh

Najszybciej będzie prawdopodobniej w sposób opisany 
przezemnie w poście wyżej.


-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.      http://l3v.pl/
Re: kontrolka do wpisywania daty
#21768
Author: Jakub Owczarski
Date: Thu, 23 Sep 2010 14:46
21 lines
2268 bytes
On Sep 23, 11:10 am, Łukasz 'Maly' Ostrowski <m...@USUNnemo.pl> wrote:

> [W wątku UI]
> <code>
> var ci = new CultureInfo("pl-PL");
> ci.DateTimeFormat.ShortDatePattern = "dd.MM.yyyy";
> Thread.CurrentThread.CurrentCulture = ci;
> Thread.CurrentThread.CurrentUICulture = ci;
> </code>
>
> To nie przejdzie, customowy formatting string nie będzie
> używany przez DTP z Common Controls(bo w ogóle nie będzie
> przekazany ;-) ).

Przechodzi i działa jak trzeba.
Thread.CurrentThread.CurrentCulture =
(System.Globalization.CultureInfo)Thread.CurrentThread.CurrentCulture.Clone();
Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern =
"dd.MM.yyyy";

pzdr.
Re: kontrolka do wpisywania daty
#21769
Author: Jakub Owczarski
Date: Thu, 23 Sep 2010 14:52
9 lines
1852 bytes
On Sep 23, 2:46 pm, Jakub Owczarski <jakub.owczar...@gmail.com> wrote:
> On Sep 23, 11:10 am, Łukasz 'Maly' Ostrowski <m...@USUNnemo.pl> wrote:

...

Upsi dejzi. Dopiero zauważyłem, że to o win forms, a ja o WPF.
Sorry :)

pzdr.
Re: kontrolka do wpisywania daty
#21770
Author: Łukasz 'Maly' Ostrowski
Date: Thu, 23 Sep 2010 15:06
14 lines
1627 bytes
On Thu, 23 Sep 2010 07:52:07 -0700 (PDT), Jakub Owczarski wrote:
> Upsi dejzi. Dopiero zauważyłem, że to o win forms, a ja o WPF.

Nom, w WinForms DTP jest nie-natywno-WinFormsowy tylko 
natywno-Win32 =],a WPF ma pewnie natywno-WPFową kontrolkę,
więc nie wątpie w jej działanie ;-).

> Sorry :)

Nie ma za co ~=].

-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.      http://l3v.pl/
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads