Windows phone 7 创建具有不可见边框的栅格
我正在开发一个windows phone应用程序。我需要创建一个3X3网格状结构。我希望边界最初是不可见的。当用户触摸边框时,它应该是可见的。请给我一些指导如何开始。我不熟悉windows phone框架。另外,可以在silverlight中完成,还是我需要xna?silverlight很好。添加一个包含3列、3行和3列的网格Windows phone 7 创建具有不可见边框的栅格,windows-phone-7,Windows Phone 7,我正在开发一个windows phone应用程序。我需要创建一个3X3网格状结构。我希望边界最初是不可见的。当用户触摸边框时,它应该是可见的。请给我一些指导如何开始。我不熟悉windows phone框架。另外,可以在silverlight中完成,还是我需要xna?silverlight很好。添加一个包含3列、3行和3列的网格 <Grid Name="grid"> <Grid.ColumnDefinitions> <ColumnDefinit
<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;
}
public主页()
{
初始化组件();
var borders=新边界[3,3];
var handler=neweventhandler(主页点击);
对于(int i=0;i<3;i++)
对于(int j=0;j<3;j++)
{
边界[i,j]=新边界()
{
边界厚度=新厚度(4),
不透明度=0,
BorderBrush=新的SolidColorBrush(Colors.White)
};
borders[i,j].Tap+=handler;
Grid.SetRow(边界[i,j],i);
Grid.SetColumn(边框[i,j],j);
grid.Children.Add(borders[i,j]);
}
}
无效主页\点击(对象发送器、手势事件参数)
{
var snd=发送方作为边界;
不透明度=1;
}
我使用了一个边框数组,以便以后可以轻松地操纵它们,但这并不是必需的
编辑:如果您想在整个网格周围设置边框,请对tap事件执行相同的操作,但在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>