#c# #windows-phone-7 #grid #touch
#c# #windows-phone-7 #сетка #коснитесь
Вопрос:
Я пытаюсь придумать решение для создания сетки на экране и обеспечения интерактивности каждой ячейки (событие простого щелчка). Лучшим способом описать это было бы динамическое построение 2D-карты плиток путем щелчка по ячейкам.
Я все еще новичок в мобильных инструментах, поэтому, возможно, я упускаю что-то очевидное. Сначала я предположил, что могу использовать элемент управления Grid, но я не верю, что существует способ запускать каждую ячейку по отдельности. Возможно, мне нужно каким-то образом заполнить каждую ячейку чем-то, на что можно нажать?
Ответ №1:
Это действительно зависит от того, чего именно вы пытаетесь достичь. Вы можете просто сделать элемент управления интерактивным, если придадите ему некоторый цвет, например:
<Grid
x:Name="ContentPanel"
Background="LightCoral"
Tap="ContentPanel_Tap">
<TextBlock
x:Name="posTb" />
private void ContentPanel_Tap(object sender, GestureEventArgs e)
{
var pos = e.GetPosition(ContentPanel);
posTb.Text = pos.X "," pos.Y;
}
С помощью этого вы можете определить позицию, к которой вы прикоснулись, и как таковую ячейку в сетке, но вы, вероятно, в любом случае захотите заполнить сетку каким-либо контентом, поэтому вы можете просто сделать этот контент интерактивным.