3

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

4

2 回答 2

4

假设您的 UserControl 格式如下:

<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

于 2012-06-18T14:03:14.703 回答
3

对于 Windows Phone 8 和 Windows Phone 8.1,我可以通过执行以下操作来完成此操作:

创建您的用户控件。在这个例子中,我创建了一些矩形来模仿经典的移动菜单按钮。

您的用户控件

构建解决方案。项目将更新,您现在将在工具箱中看到您的用户控件。

工具箱

只需将您的用户控件拖出工具箱,然后将其放在您希望使用您的用户控件的 XAML 页面中。

使用中的用户控件

于 2014-07-29T03:11:56.330 回答