我看到了这个
UWP check the current page for name or instance
stackoverflow上的问题。它提到我可以通过currentFrame.SourcePageType
获取页面的类型。我的问题是:一旦我在当前Frame
中处于活动状态的页面类型,我该如何访问该页面的元素,例如一个TextBox?
答案 0 :(得分:0)
不确定你要做什么,但这很酷。这样做:
Activator.CreateInstance(null, PageType.ToString());
实例化后,页面无法添加到
Frame
,因此,如果我们想到导航到某个实例,那么您应该记住这个页面。
要访问控件,我认为您的意思是,您需要通过执行以下操作将其公开:<Control x:Name="MyControl" x:FieldModifier="Public" />
x:ModifyField
指令是关键。
更多:https://docs.microsoft.com/en-us/windows/uwp/xaml-platform/x-fieldmodifier-attribute
您不想实例化该类型,这是我第一次认为您想要做的事情,现在我看到您只想访问Page
中当前可见的Frame
, 这样更容易。
var p = _frame.Content as Page;
p.MyControl.Text = "Hello world";
祝你好运!