powershell - 使用Power Shell阅读XAML

标签 powershell xaml

我下面有一个由Visual Studio创建的XAML文件,我无法使用powershell的name属性读取节点。

我试过下面的命令从$ XAML中读取

[void][System.Reflection.Assembly]::LoadWithPartialName('presentationframework')
$reader=(New-Object System.Xml.XmlNodeReader $xaml) 
$Form=[Windows.Markup.XamlReader]::Load( $reader )

$xaml.SelectNodes("//*[@Name]") | ForEach-Object {Set-Variable -Name ($.Name) -Value $Form.FindName($_.Name)}

上面提到的命令可以与另一个XAML文件完美配合,现在我从下面粘贴的XAML中没有任何值,
我可以看到的与此XAML的不同之处在于添加了网格。但是我需要在XAML下面使用。任何帮助表示赞赏。

我的XAML文件在这里https://gist.github.com/pramodtvm/c5f5d4d262c2d0ab72d502d1d526c309

最佳答案

好吧,似乎是一些 namespace 的东西,您可以使用以下代码吗:

$XAML.GetElementsByTagName("*")|? { $Form.FindName($_.Name) }|% { Set-Variable -Name $_.Name -Value $_ }

关于powershell - 使用Power Shell阅读XAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47996197/

相关文章:

silverlight - 在其继承树中具有通用类的 UserControl

powershell - 如何使用单个命令加载自定义 powershell 配置文件

powershell - 为什么我的参数只处理一个值

powershell - 通过调用命令启 Action 业 : Job is only available in remote session

c# - 为什么在 XAML 中绑定(bind) MainWindow datacontext 无法像在代码隐藏中使用 this.datacontext=this 绑定(bind)一样?

wpf - 显示组合框所选项目的数据网格详细信息

c# - Login-AzureRmAccount 命令无法从托管 C# 应用程序运行

PowerShell MAML 帮助生成器

c# - 标签中的装饰和扩展文本

c# - 如何覆盖 DataGridRow 模板中的 AlternatingRowBackground?