跨平台Xamarin Forms的用户控件

11

我已经寻找了很长时间,但仍然没有找到一种在跨平台Xamarin Forms中创建类似WPF用户控件的方法。这样做甚至可能吗?我正在使用Visual Studio 2013的Xamarin。

1个回答

20

这是一个XAML示例。只需添加,您可以拥有任何基本可视元素。例如Grid、StackLayout、Image等。

 <Grid xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="Mobile.Control.UserControl">

 </Grid>

这是背后的代码

namespace Mobile.Control
{
    public partial class UserControl : Grid
    {
        public UserControl()
        {
            InitializeComponent();

        }

    }
}

使用它,转到您的页面并实现命名空间

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
          xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
          xmlns:control="clr-namespace:Mobile.Control;assembly=Mobile"
          x:Class="Mobile.View.MyPage">

然后在页面中

<control:UserControl />

什么是 Header 函数? - Emil
1
@batmaci - 这是一个复制粘贴错误。我已经更新了代码。 - Adam
我收到一个错误,指出InitializeComponent在当前上下文中不存在。对于从Grid派生的类来说,这是一个正确的调用吗? - John Livermore
我尝试了这个,但是出现了“无法加载文件或程序集'<命名空间名称>'或其某个依赖项”的错误。请注意:我正在使用共享项目。 - PLOW
你的解决方案很棒。然而,我希望你展示一下如何将用户控件元素绑定到父容器页面。 - stackunderflow
显示剩余5条评论

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