Я новичок в разработке Windows Phone, и у меня есть вопрос относительно приложения, которое я создаю.Разработка Windows Phone: как создать пользовательский класс в сетке xaml?
У меня есть проект, который имеет классы под названием «MainPage.xaml», «MainPage.xaml.cs» и «Character.cs». В моем классе Character.cs я создаю объект, который выглядит как прямоугольник (если я правильно сделал класс) при создании экземпляра. Вот код:
using System;
using System.Collections.Generic;
//using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using System.Windows.Input;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
using Windows.UI.Xaml.Shapes;
using System.Diagnostics;
//Blue color: "#FF32C7FF"
//Green color: "#FF32FFE3"
namespace Manipulation
{
public sealed partial class Character : Control
{
Path myPath = new Path();
private TranslateTransform dragTranslation;
private int gameStage; // Determines what stage of game
private int colorChoice;
private int xCord = 200;
private int yCord = 200;
private int rHeight = 100;
private int rWidth = 100;
public Character()
{
Random rand = new Random();
SolidColorBrush characterColor = new SolidColorBrush();
Rect myRectangle = new Rect(xCord,yCord,rWidth,rHeight);
Path myPath = new Path();
RectangleGeometry myGeo = new RectangleGeometry();
GeometryGroup myGeoGroup = new GeometryGroup();
Canvas myCanvas = new Canvas();
//Grid MyGrid = new Grid();
colorChoice = rand.Next(1,3);
if(colorChoice == 1) // Represents blue color
{
characterColor.Color = Windows.UI.Color.FromArgb(100,50,199,225);
myPath.Stroke = characterColor;
}
else // Represents green color
{
characterColor.Color = Windows.UI.Color.FromArgb(100,50,225,227);
}
myPath.StrokeThickness = 5;
myGeo.Rect = myRectangle;
myGeoGroup.Children.Add(myGeo);
myPath.ManipulationDelta += Drag_ManipulationDelta;
dragTranslation = new TranslateTransform();
myPath.RenderTransform = this.dragTranslation;
myPath.ManipulationMode = ManipulationModes.TranslateX | ManipulationModes.TranslateY;
myPath.Data = myGeoGroup;
}
private void Drag_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
{
dragTranslation.X += e.Delta.Translation.X;
dragTranslation.Y += e.Delta.Translation.Y;
}
public int GameStage { get { return gameStage; } set { gameStage = value; } }
public int CharacterColorNum { get { return colorChoice; } set { colorChoice = value; } }
public int XCoordinate { get { return xCord; } set { xCord = value; } }
public int YCoordinate { get { return yCord; } set { yCord = value; } }
public int CharacterHeight { get { return rHeight; } set { rHeight = value; } }
public int CharacterWidth { get { return rWidth; } set {rWidth = value;} }
}
}
То, что я хочу быть в состоянии сделать это в моем классе «MainPage.xaml.cs» Я хочу, чтобы создать экземпляр этого класса персонажа и иметь его место прямоугольника это делает на моем «MainPage .xaml 'сетка. Может ли кто-нибудь пройти меня через это, так как я новичок?
Благодаря
Google, как создать 'пользовательский элемент управления' в Windows Phone. –
Хорошо. Я буду читать. – DigitalMath