当前位置:编程学习 > C#/ASP.NET >>

XAML文件和XAML.cs文件

XAML文件:
<UserControl x:Class="SilverlightMonster.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Cursor="None"
    Width="1366" Height="768" MouseMove="Ghost_MouseMove"  xmlns:SilverlightMonster="clr-namespace:SilverlightMonster">
    <Canvas x:Name="cnvMovementTest" Width="1366" Height="768" Background="Bisque">
        <SilverlightMonster:Ghost Canvas.Left="10" Canvas.Top="10" x:Name="ghost"/>
    </Canvas>
</UserControl>

问题一:在这段代码中“xmlns:SilverlightMonster="clr-namespace:SilverlightMonster"”表示什么意思?
问题二:“<Canvas>”和“<SilverlightMonster>”是什么意思?为什么在“<SilverlightMonster>”中可以设置“<Canvas>”的属性?

XAML.CS文件:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SilverlightMonster
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void Ghost_MouseMove(object sender, MouseEventArgs e)
        {
            // Get the mouse current position
            Point point = e.GetPosition(cnvMovementTest);
问题三:这里不是获得画布的坐标吗,怎么成了获得鼠标的坐标?

            // Set the canvas Left property to the mouse X position
            ghost.SetValue(Canvas.LeftProperty, point.X);
            // Set the canvas Top property to the mouse Y position
            ghost.SetValue(Canvas.TopProperty, point.Y);
        }
    }
} --------------------编程问答-------------------- 前两条你问的太基础了,好好看看书吧 --------------------编程问答-------------------- 看看相关书籍 --------------------编程问答-------------------- 1)xmlns:SilverlightMonster="clr-namespace:SilverlightMonster
导入SilverlightMonster命名空间,相当于cs文件中的using SilverlightMonster

2)Canvas提供了一种固定布局的功能,置于Canvas之内的控件可以指定相对于Canvas左上原点的偏移
这就是Canvas.Left="10" Canvas.Top="10"可以这么写的原因

3)这是一个坐标转换,将屏幕坐标转为相对于Canvas控件的逻辑坐标 --------------------编程问答--------------------
引用 3 楼 bloodish 的回复:
1)xmlns:SilverlightMonster="clr-namespace:SilverlightMonster
导入SilverlightMonster命名空间,相当于cs文件中的using SilverlightMonster

2)Canvas提供了一种固定布局的功能,置于Canvas之内的控件可以指定相对于Canvas左上原点的偏移
这就是Canvas.Left="10" ……


“导入SilverlightMonster命名空间”,在“XAML”文件中导入吗? --------------------编程问答--------------------
引用 4 楼 sssolweb_002 的回复:
引用 3 楼 bloodish 的回复:
1)xmlns:SilverlightMonster="clr-namespace:SilverlightMonster
导入SilverlightMonster命名空间,相当于cs文件中的using SilverlightMonster

2)Canvas提供了一种固定布局的功能,置于Canvas之内的控件可以指定相对于Canvas左上原点的偏移……


--------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 多看代码啊,要学的真多啊。 --------------------编程问答-------------------- silverlight.......
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,