Tudd Intuíció, előadás, adatok kötelező érvényű keretet WPF
Alkalmazástechnikai tulajdonságok DataContext elemek hozzárendelés kötési forrás
Néha több vevővel kell megkötni, hogy ugyanabból a forrásból. Annak érdekében, hogy ne megismételni minden kifejezés a kötődési forrás nevét és valahogy automatizálni ezt a feladatot, a WPF gyakran DataContext tulajdon. Ez a tulajdonság be FrameworkElement osztály és az örökölt minden tagjának ezt derivatívakategóriák. Használata egy alternatív módszer kijelölése forrás objektum vesz részt a kötésben.
Ha a céisejtkötési kifejezést idézet a Source tulajdonság értékeket. A WPF automatikusan keresni először a kötött kifejezést, majd - a szülő elem irányában felfelé logikai gyökere, amíg a forrás nem található. Ha a forrás nem található, a WPF majd csak csendben, mert a kötési mechanizmusa nem generál kivételek. Általában igyekeznek szűkíteni a keresési tartományt, forgalomba tulajdon meghatározása DataContext legközelebbi szülőtároló kiterjedő megköthető vevők.
Keresve a fa, WPF próbál találni egy első környezetadatokat DataContext. nem egyenlő nulla. Ha az adatok összefüggésben találtuk, hogy használják a kötődés, ha nem, a kötelező erőt nem alkalmaz értéket a cél elemet, és nem volt semmi, hogy nem mutatják.
Tegyük fel, hogy van néhány eleme TextBlock ellenőrzés. egyértelműen kapcsolódik az azonos erejű forrás:
De ugyanezek a három TextBlock ellenőrzés. kapcsolódó adatok összefüggésben DataContext StackPanel tartály:
Ha a következő konténer közelében DataContext attribútum nincs megadva, a keresés továbbra is a következő külső tartály, amíg nem talál egy nem zéró adatok DataContext kontextusban vagy keresési sikertelen lesz.
Tab Page3. Használata DataContext tulajdonságokat a cél elemet
A következő példa DataContext tulajdon kerül a kötési vevő.
- Add a TabControl tartály Page3 egy új lapot, a következő jelölés
Az elem ScrollBar attribútum Maximum = „100” azt jelenti, a felső határérték tartományban, LargeChange = „10” - lépésben áthelyezése a csúszkát a rákattint a területekre, hogy a jobb és bal belőle, SmallChange = „1” - növekmény értékek rákattint a végén sor elemeit . Ebben a példában, semmilyen előnyt DataContext tulajdonság nem ad, hanem egyszerűen osztja kötési expressziós két részre.
- Az alkalmazás futtatásához - Page3 lapon az alábbi kiadási területen

Page4 lapot. A tulajdonságok használatával a szülő elem DataContext
- Hozzáadása TabControl konténer új lap Page4
- Mozgás rendeltetési kötési forrása DataContext tulajdonságokat a vevőt a szülő elem
következik
elem
- Tapasztalattal Page4 lapon - ez nem térnek el a fülek Page3
Page5 lapot. Kötés több vevőkészülék egyetlen forrás nélkül tulajdonságok DataContext
Tekintsük a példát, amikor nem használja a DataContext ingatlan jár viszonylag nehézkes jelölést.
- Add a TabControl tartály Page5 lapon a következő jelölés
- Az alkalmazás futtatásához - az lesz az eredmény

Page6 lapot. Kötés több vevőkészülék egyetlen forrásból segítségével tulajdonságok DataContext
- Page6 egy új lapot, és másolja a jelölő példaként preduduschego
Tekintettel arra, hogy már eltávolították duplikált kód ugyanabból a forrásból egy kötelező kifejezése célelemek és tegye rá a DataContext ingatlan a szülő elem, kötelező kódex vált elegáns.
- Az alkalmazás futtatásához - nézetlapjai Page6 teljesen egybeesik a terület Page5 lap kiadási
Engedje meg, hogy néhány megjegyzést: