Sdílet prostřednictvím


Reakce na změny a jejich šíření

Když je prvek vytvořen, odstraněn nebo aktualizován, můžete napsat kód, který rozšíří změnu do jiných částí modelu, nebo do externích prostředků, jako jsou soubory, databáze nebo jiné komponenty.

Reference

Jako vodítko zvažte tyto techniky v následujícím pořadí:

Postup Scénáře Další informace
Definujte vlastnost počítané domény. Vlastnost domény, jejíž hodnota se počítá z jiných vlastností v modelu. Například cena, která je součtem cen souvisejících prvků. Vypočtené a vlastní vlastnosti úložiště
Definujte vlastnost vlastní domény úložiště. Vlastnost domény uložená v jiných částech modelu nebo externě. Můžete například analyzovat řetězec výrazu do stromu v modelu. Vypočtené a vlastní vlastnosti úložiště
Přepsání obslužných rutin změn, jako je OnValueChanging a OnDeleting Udržujte různé prvky synchronizované a udržujte externí hodnoty synchronizované s modelem.

Omezte hodnoty na definované oblasti.

Volá se bezprostředně před a za hodnotou vlastnosti a dalšími změnami. Změnu můžete ukončit vyvoláním výjimky.
Obslužné rutiny změny hodnoty vlastnosti domény
Pravidla Můžete definovat pravidla, která jsou zařazena do fronty pro provádění těsně před koncem transakce, ve které došlo ke změně. Nejsou spouštěné v režimu Zpět nebo Znovu. Používejte je k udržování jedné části obchodu v synchronizaci s jinou. Pravidla šířící změny v modelu
Ukládání událostí Úložiště modelování poskytuje oznámení o událostech, jako je přidání nebo odstranění prvku nebo propojení nebo změna hodnoty vlastnosti. Událost se také provede v režimu Zpět a Znovu. Události úložiště slouží k aktualizaci hodnot, které nejsou v úložišti. Obslužné rutiny události šířící změny mimo model
Události .NET Obrazce mají obslužné rutiny událostí, které reagují na kliknutí myší a další gesta. U každého objektu musíte tyto události zaregistrovat. Registrace se obvykle provádí v přepsání InitializeInstanceResources a musí být provedeno pro každý prvek.

K těmto událostem obvykle dochází mimo transakci.
Postupy: Zachycení kliknutí na obrazec nebo dekorátor
Pravidla hranic Pravidlo hranic se používá speciálně k omezení hranic obrazce. Umístění a velikost obrazce omezení BoundsRules
Pravidla výběru Pravidla výběru konkrétně omezují, co uživatel může vybrat. Postupy: Přístup k aktuálnímu výběru a jeho omezení
OnAssocatedPropertyChanged Označte stavy prvků modelu pomocí vlastností obrazců a spojnic, jako jsou stíny, šipky, barva a šířka čáry a styl. Aktualizace obrazců a konektorů k vyjádření modelu

Porovnání pravidel a událostí ukládání

Upozornění na změny, pravidla a události se spouštějí, když dojde ke změnám v modelu.

Pravidla se obvykle použijí na koncové transakci, ve které došlo ke změně, a události se použijí po potvrzení změn v transakci.

Události úložiště slouží k synchronizaci modelu s objekty mimo úložiště a pravidla pro zachování konzistence v rámci Úložiště.

  • Vytváření vlastních pravidel Vytvoříte vlastní pravidlo jako odvozenou třídu z abstraktního pravidla. Musíte také upozornit architekturu na vlastní pravidlo. Další informace naleznete v tématu Pravidla šíření změn v rámci modelu.

  • Přihlášení k odběru událostí Před přihlášením k odběru události vytvořte obslužnou rutinu a delegáta události. Pak se pomocí EventManagerDirectoryvlastnosti přihlaste k odběru události. Další informace naleznete v tématu Obslužné rutiny událostí šíření změn mimo model.

  • Vrácení změn zpět Při vrácení transakce zpět, události jsou vyvolány, ale pravidla nejsou použita. Pokud pravidlo změní hodnotu a tuto změnu vrátíte zpět, hodnota se během akce vrácení zpět obnoví na původní hodnotu. Při vyvolání události je nutné hodnotu ručně změnit zpět na původní hodnotu. Další informace otransakcích

  • Předávání argumentů události pravidlům a událostem události i pravidlům se předává EventArgs parametr, který obsahuje informace o tom, jak se model změnil.