创建组件并在 Windows phone 8.1 中重复使用

Create a component and reuse it in Windows phone 8.1

我想创建一些组件并在不同的页面中重复使用它们,在一个页面中放置多个组件等。

例如,我想创建一个包含图像、一些文本等的组件。元素的位置是固定的,但我会更改图像、文本...我的意思是,在同一个页面我想放三个不同图片和文字的圆圈...

最好的方法是什么?我找到了 UserControl,但我无法从另一个页面调用方法来更改某些内容。

这是我的组件XAML

<UserControl
    x:Class="aa.Components.CircularGraph"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:Components"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    d:DesignHeight="300"
    d:DesignWidth="300">

    <Grid Name="view">
        <Image Name="imageGraph" Source="../Assets/aa/circuloGris.png" 
       />
        <StackPanel Orientation="Vertical">
            <TextBlock Name="firstLine" Text="1" FontFamily="Arial" FontSize="9"></TextBlock>
            <TextBlock Name="secondLine" Text="2" FontFamily="Arial" FontSize="9"></TextBlock>
            <TextBlock Name="thirdLine" Text="3" FontFamily="Arial" FontSize="9"></TextBlock>
        </StackPanel>
    </Grid>
</UserControl>

其代码:

 public sealed partial class CircularGraph: UserControl {
        public CircularGraph() {
            this.InitializeComponent();

            Height = 300;
            Width = 400;
        }

        public void changeFirstLine(string var) {
            firstLine.Text = var;
        }
    }

在其他页面我放了:

<local:CircularGraph Name="circularGraph"/>

我试着把它放在 .cs 中:

protected override void OnNavigatedTo(NavigationEventArgs e) {            
             circularGraph.changeFirstLine("aaa");
}

但我有一个错误:名称 'circularGraph' 在当前上下文中不存在。

我该怎么做?

抱歉,如果这是一个简单的问题。我是 Windows phone 的新手。 非常感谢!

尝试 x:Name 而不是 Name。 "All x:Name means to XAML is generate a field to store the value in the code behind class."

<local:CircularGraph x:Name="circularGraph"/>

In WPF, what are the differences between the x:Name and Name attributes?