我的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; }
}
答案 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属性设为公共,然后你找到应用程序的窗口实例,找到你想要的那个,然后修改它。
我无法用我当前的积分添加评论,所以我在这里留下链接作为答案。别忘了向答案的实际作者投票。