微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

.net – 如何创建多个用户控件,将单个代码指向silverlight 4中的文件

我正在创建一个应用程序,其中我有2个用户控件,
是否有可能,我们有2个xaml用户控制页面,并且在xaml.cs文件后面有1个代码

解决方法

首先创建三个文件,首先将“code-behind”.cs文件创建为一个简单的类: –

public class MyCommonUserControl : UserControl
 {

 }

请注意,它没有InitializeComponent调用.

现在创建一个新的UserControl,然后将其xaml修改为如下所示: –

<local:MyCommonUserControl x:Class="YourApp.FirstMyCommonUserControl "
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:YourApp"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400">

    <Grid x:Name="LayoutRoot" Background="White">

    </Grid>

</local:MyCommonUserControl >

注意添加xmlns:local别名以指向应用程序的命名空间,然后将UserControl标记更改为我们实际需要的基本控件.

您可以将.xaml.cs修改为: –

public partial class FirstMyCommonUserControl : MyCommonUserControl 
{
    public FirstMyCommonUserControl()
    {
        InitializeComponent();
    }
}

这就是.xaml.cs需要包含的全部内容.

然后,您可以为SecondMyCommonUserControl重复此操作,依此类推.将所有公共代码放在基本MyCommonUserControl类中.

很遗憾MS首先没有预料到这一点,在底层的UserControl中添加一个空的虚拟InitializeComponent方法,并且.gics自动生成代码覆盖了该方法,这意味着我们可以免除这个超级.xaml.在这些情况下的cs文件.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐