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.
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
}
}