在Windows Phone页面中添加用户控件

3

我有一个Windows手机应用程序,需要在其中的一个页面中添加一个用户控件。我想像在ASP.NET页面中那样添加它,而不是作为弹出窗口。如何将此用户控件添加到页面中?

2个回答

4
假设您的用户控件格式类似于:
<UserControl x:Class="UserControlExample.NameReporter"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >

<!-- Controls here -->

</UserControl>

当您创建一个新的UserControl并且代码后台类似于时,默认情况下应该这样做

using System.Text;
using System.Windows;
using System.Windows.Controls;

namespace UserControlExample
{
    public partial class NameReporter : UserControl
    {
        public NameReporter()
        {
            InitializeComponent();
        }

        // your custom methods here
    }
}

您应该能够通过类似于以下代码的方式将其添加到页面中:

<Grid xmlns:src="clr-namespace:UserControlExample" 
        Background="White" Margin="0,50,0,0">
  <Grid.RowDefinitions>
    <RowDefinition Height="Auto"/>
    <RowDefinition Height="Auto"/>
  </Grid.RowDefinitions>
  <src:NameReporter Grid.Row="0"/>
  <src:NameReporter Grid.Row="1" Margin="0,15,0,0"/>
</Grid>

只需在clr-namespace:之后更改命名空间,在src:之后更改控件名称即可。
您可以将xmlns:标记放入<phone:PhoneApplicationPage>标记中,以便在整个表单中使用该控件(而不仅在网格中),并且您可以将src更改为任何您希望引用它的名称。
如果UserControl创建正确,则编译解决方案应意味着它出现在您的工具箱中可供使用,因此您只需拖放即可。
有关更完整的示例,请参见参考文献。

参考文献:

http://msdn.microsoft.com/en-us/library/system.windows.controls.usercontrol%28v=VS.95%29.aspx


3
对于Windows Phone 8和Windows Phone 8.1,以下是我实现这一点的步骤:
创建用户控件。在这个例子中,我创建了一些矩形来模拟经典的移动菜单按钮。
构建解决方案。该项目将会更新,并且你将在工具箱中看到你的用户控件。
只需从工具箱中拖动用户控件并将其放置在你希望使用它的XAML页面中即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接