WEB开发网
开发学院软件开发C语言 C#开发WPF/Silverlight动画及游戏系列教程(Game T... 阅读

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十六)地图自定义切片与导出

 2010-09-30 21:01:05 来源:WEB开发网   
核心提示: 其中Line的Stroke参数用于设置线条颜色(注意Fill属性对它来说没有任何效果),而StrokeDashArray参数则用来定义线条虚线部分的宽与间距,C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十六)地图自定义切片与导出(2),既然地图切的

其中Line的Stroke参数用于设置线条颜色(注意Fill属性对它来说没有任何效果),而StrokeDashArray参数则用来定义线条虚线部分的宽与间距。既然地图切的是矩形片,那么我们同样可以将此方法用于地图切片分割的功能上。为了在地图编辑器上增加可以自定义切片尺寸的选择器,考虑到Slider不太合适,这里我选择使用WinForm控件库中的NumericUpDown,即灵活又强大。在WPF中的添加WinForm控件需要几个步骤:

1)  添加dll引用:需要引用WindowsFormsIntegrationl和System.Windows.Forms。

2)  如果是在xaml中使用,则需要添加类似如下的定义:

    xmlns:WinFormHost = "clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
    xmlns:WinForm = "clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"

3)使用的时候通过一个WinFormHost包含一个WinForm控件的形式,以添加两个NumericUpDown为例,我们可以这样写:

<WinFormHost:WindowsFormsHost Canvas.Left="820" Canvas.Top="170" Height="20" Width="101">
        <WinForm:NumericUpDown x:Name="SectionWidth" Maximum="500" Minimum="100" Increment="10" Value="300" ValueChanged="SectionSize_ValueChanged" />
</WinFormHost:WindowsFormsHost>
<WinFormHost:WindowsFormsHost Canvas.Left="820" Canvas.Top="196" Height="20" Width="101">
        <WinForm:NumericUpDown x:Name="SectionHeight" Maximum="500" Minimum="100" Increment="10" Value="300" ValueChanged="SectionSize_ValueChanged" />
</WinFormHost:WindowsFormsHost>

上一页  1 2 3 4  下一页

Tags:开发 WPF Silverlight

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接