Příklad – Zobrazit nebo skrýt ovládací prvky dynamicky v dialogu Data Standard

Je možné zobrazit / skrýt a Povolit / zakázat řídí pomocí prostředí PowerShell kód.

Můžete například zobrazit / skrýt nebo Povolit / zakázat ovládací prvky pro určité typy souborů, nebo v závislosti na hodnotě jiné vlastnosti.

Ovládací prvky lze manipulovat kdykoliv v prostředí PowerShell kód. K těmto ovládacím prvkům se dostanete pomocí funkce $dsWindow.FindName("thenameofyourcontrol"). Předpokladem pro tento capaibility je, že ovládací prvek zobrazuje název atributu s jedinečným názvem.

Příklad

V tomto příkladu budeme zakázat textové pole nadpisu při úpravách souboru. Textové pole pro vlastnost nadpisu získá název txtTitle:

<TextBox Name="txttitle" ....

V prvku InitializeWindow zkontrolujeme, zda se jedná o dialog souboru a zda je v režimu úprav.

function InitializeWindow
{
  $dialogName = $dsWindow.DataContext.GetType().Name
  if($dialogname--eq-"fileviewmodel"--and-$dswindow.name--eq-"filewindow")
  {
    $dsWindow.FindName("txttitle").IsEnabled=$false
  }
}

Jak vidíte, prvek FindName("nameofthecontrol") poskytuje přístup k vlastnosti IsEnabled nebo ke všem dalším vlastnostem, které tento typ ovládacího prvku může nabídnout.

Stejný postup lze použít v obslužné rutiny událostí, které mají vliv na chování jednotlivé ovládací prvky, když je uživatel zadáním dat.

Příklad aplikace CAD

V případě aplikace CAD, syntaxe je stejné, s výjimkou zkontrolujte, zda je v dialogu Vytvořit nebo v režimu úprav.

V prvku InitializeWindow zkontrolujeme, zda se jedná o dialog souboru a zda je v režimu úprav:

function InitializeWindow 
{
  $dialogName = $dsWindow.DataContext.GetType().Name
  if($Prop["_EditMode"].Value -eq $true)
  {
    $dsWindow.FindName("txttitle").IsEnabled=$false 
  }
}