WPF Property Validation, hogyan lehet egyszerűen?
2019-02-12T16:17:52+01:00
2019-02-19T09:55:38+01:00
2022-08-11T10:15:32+02:00
tamakwa
Sziasztok,

szeretnék egy szerintem viszonylag egyszerű dolgot megoldani: egy adott osztály double property-ének intervallumot adni, hogy se kisebb, se nagyobb értéket ne lehessen beállítani, semmikor. Néhány szituáció, amire figyelni kéne:

1. a propery ki van kötve egy ablakba, ahol működnie kell a Min/MaxValue-nak
2. a propery értéke mentődik config fájlba, ezért ha ott átírásra kerül, akkor a program újabb indulásakor se eshessen intervallumon kívül
3. lehetőség szerint elég legyen egy helyen megadni a Min/Max értékeket
4. hibaüzenet nem szükséges

Már próbáltam a Range attribútumot, de annak látszólag semmit sem csinál. Ha a Binding-nál állítok ValidationRule-t, annak nem lesz hatása a config fájlos olvasásra. Nem gondolnám, hogy ez ennyire komplikált, bár lehet. :) Van valakinek ötlete? Vagy a beviteli mezőnél állítsak Min/Max-ot, modell szinten a set résznél pedig újra egy vizsgálatot? Ezzel csak a 3. pontot nem sikerül teljesíteni. :)

Köszi,
Zoli
Mutasd a teljes hozzászólást!
lehet én nem értem teljesen mi a probléma, vagy te bonyolítod túl. Mindenesetre én a property set részébe beleraknám ezt a min/max-ozást (Math.Clamp), meg a mentést is. Gondolom a RaisePropertyChanged az ott van és az UpdateSourceTrigger=PropertyChanged is be van állítva.
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd