これを非表示にして、PowerShell コードによってコントロールの表示を有効 / 無効にすることができます。
たとえば、非表示 / 表示を切り替える、または特定のファイル タイプに対して有効 / 無効コントロール、または他のプロパティの値によって以下のことができます。
コントロールは、PowerShell コードでは、同時に操作することができます。これらのコントロールには、関数 $dsWindow.FindName("thenameofyourcontrol")
を介してアクセスします。この capaibility の前提条件は、コントロールは、一意の名前とアトリビュート名を公開します。
この例では、ファイルを編集するときに、タイトル テキストボックスが無効になります。プロパティのタイトルのテキスト ボックスは次のように、txtTitle
名を取得します。
<TextBox Name="txttitle" ....
InitializeWindow
では、ダイアログ ボックスには、ファイル ダイアログボックスが表示されるかどうか、および編集モードであるかどうかを確認します。
function InitializeWindow
{
$dialogName = $dsWindow.DataContext.GetType().Name
if($dialogname--eq-"fileviewmodel"--and-$dswindow.name--eq-"filewindow")
{
$dsWindow.FindName("txttitle").IsEnabled=$false
}
}
ご覧のように、FindName("nameofthecontrol")
を使用すると、IsEnabled
プロパティにアクセスできます。または、このタイプのコントロールが提供するその他すべてのプロパティにアクセスできます。
同じ方法で、ユーザデータの入力中に各コントロールの動作に影響するイベント ハンドラ内で適用することができます。
CAD の例
CAD のケースでは、構文はダイアログを作成または編集モードであるかどうかをチェックする以外は同じです。
InitializeWindow
では、ダイアログ ボックスには、ファイル ダイアログボックスが表示されるかどうか、および編集モードであるかどうかを確認します。
function InitializeWindow
{
$dialogName = $dsWindow.DataContext.GetType().Name
if($Prop["_EditMode"].Value -eq $true)
{
$dsWindow.FindName("txttitle").IsEnabled=$false
}
}