访问另一个页面UWP上的变量

时间:2018-05-21 14:24:53

标签: c# xaml uwp

我的UserControl.Xaml中有这个Imagebox

 <Image x:Name="MainImage" Margin="20,20,20,20" Source="{Binding FrontImage}" Stretch="Fill" Canvas.ZIndex="2" Width="391" Height="355">

无论如何都要到达

 x:Name="MainImage"

在我的Mainpage.XAML.cs文件中?

我试过这个,但似乎没有用

     public Image MainImage
        {
            get { return MainImage; }
        }

2 个答案:

答案 0 :(得分:2)

简短的回答是&#34;你不应该&#34;。

答案很长:就像他的前任名为WPF一样,UWP框架打算采用MVVM方法。这意味着您应该避免在视图中放置太多逻辑(也就是&#34;代码背后&#34; * .xaml.cs文件)。相反,您应该使用模型和视图模型,具体取决于您的目标。

例如,在您的情况下,您应该使用FrontImage(可能在适当的视图模型中),而不是尝试访问MainImage XAML控件(确实在您的视图中)。然后,您可以通过您使用的IoC框架(或其手写的等效文件来解决视图模型的给定实例,以解决视图模型和模型之间的这种依赖关系,并管理创建的实例,以防它们重复使用)。

答案 1 :(得分:0)

我很确定你想要这样的东西:

How can I access a control in WPF from another class or window

基本上你将xaml属性设为公共,然后你找到应用程序的窗口实例,找到你想要的那个,然后修改它。

我无法用我当前的积分添加评论,所以我在这里留下链接作为答案。别忘了向答案的实际作者投票。