我正在开发一个 Windows 手机应用程序。我需要创建一个 3X3 网格状结构。我希望边框最初是不可见的。当用户触摸边框时,它应该变得可见。请给我一些指导如何开始。我是 Windows Phone 框架的新手。另外,它可以在 silverlight 中完成还是我需要 xna ?
问问题
287 次
1 回答
0
银光不错。添加一个 3 列和 3 行和列的网格
<Grid Name="grid">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
</Grid>
然后将边框元素添加到每一行*列,如下所示:
public MainPage()
{
InitializeComponent();
var borders = new Border[3,3];
var handler = new EventHandler<GestureEventArgs>(MainPage_Tap);
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
{
borders[i,j] = new Border()
{
BorderThickness = new Thickness(4),
Opacity = 0,
BorderBrush = new SolidColorBrush(Colors.White)
};
borders[i, j].Tap += handler;
Grid.SetRow(borders[i,j], i);
Grid.SetColumn(borders[i,j], j);
grid.Children.Add(borders[i, j]);
}
}
void MainPage_Tap(object sender, GestureEventArgs e)
{
var snd = sender as Border;
snd.Opacity = 1;
}
我使用了一系列边框,因此您以后可以轻松地操纵它们,但这并不是真正需要的。
编辑:如果您想在整个网格周围设置边框,请对点击事件执行相同的操作,但像这样在 XAML 中设置边框
<Grid Name="grid">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Border Grid.RowSpan="3" Grid.ColumnSpan="3" Opacity="0" Tap="handler" />
</Grid>
于 2012-09-04T16:09:39.683 回答