2个半小时弄懂了自定义控件是怎么回事儿。
在silverlight中创建一个UserControl,把上面sliderbar的外观和功能都封装在里面。
以自定义控件mapslider控件为例:
1、首先在sl工程中新建sl用户控件(silverlight user control)
2、在.xaml中设计好新控件的样式
3、在.xaml.cs中添加好后台代码,这里很多会用到数据绑定,比如此处用Map来进行联动(相当于桥梁?)
4、以上三步就设计好了自定义控件,接下来就是调用了,调用三步骤就OK
1、注册user control的命名空间(和对Silverlight API的引用是一样的,放在页面中的根元素UserControl里):
xmlns:uc="clr-namespace:这里是命名空间名称"
2、在页面中添加这个slider:
<Grid x:Name="LayoutRoot" Background="White">
<!--地图在这里-->
</esri:Map>
<uc:mapslider x:Name="mapslider1"/>
</Grid>
3、在初始化的时候对我们自定义控件的Map属性赋值(page.xaml.cs中):
public Page()
{
InitializeComponent();
mapslider1.Map = Map1;
}
基本思路应该是这样吧,待自己设计几个控件后试试~~~~~