C# WinRT-从codebehind获取所有控件

C# WinRT-从codebehind获取所有控件,c#,windows-runtime,winrt-xaml,C#,Windows Runtime,Winrt Xaml,在某些情况下,我需要将所有控件设置为只读 我所有的控件都有一个x:Name指令,它被用来为每个控件设置 当页面开始有更多的控件时,我认为为每个只读控件指定控件是无效的 是否有一种方法可以在xmal的代码中说明所有控件都是只读的或至少是基于同一类的控件。可视化树包含所有逻辑元素,包括每个元素模板的所有可视化元素。可视化树负责传播IsEnabled属性,因此您可以将页面的IsEnabled属性设置为false值,并查看所有子控件都将被禁用。不必为页面上的所有控件设置此属性。我尝试了您的解决方案,但我

在某些情况下,我需要将所有控件设置为只读

我所有的控件都有一个x:Name指令,它被用来为每个控件设置

当页面开始有更多的控件时,我认为为每个只读控件指定控件是无效的


是否有一种方法可以在xmal的代码中说明所有控件都是只读的或至少是基于同一类的控件。

可视化树包含所有逻辑元素,包括每个元素模板的所有可视化元素。可视化树负责传播IsEnabled属性,因此您可以将页面的IsEnabled属性设置为false值,并查看所有子控件都将被禁用。不必为页面上的所有控件设置此属性。

我尝试了您的解决方案,但我需要的不是禁用整个页面,因为我在其中有导航。我只需要页面中的控件。@MartinZPetrov,因此我建议在页面资源中使用目标类型为所需基类的样式,并将IsEnabled设置为false。您也可以只更改包含控件的面板的IsEnabled(如LayoutRoot或suche)。只需确保在一个面板中有所有要禁用的控件,并在那里禁用即可。