私はWindowsPhoneアプリを開発しています。3X3グリッドのような構造を作成する必要があります。最初は境界線を見えなくしたい。ユーザーが境界線に触れると、境界線が表示されるはずです。始め方を教えてください。私はWindowsPhoneフレームワークを初めて使用します。また、Silverlightで実行できますか、それともxnaが必要ですか?
質問する
287 次
1 に答える
0
シルバーライトいいですね。3 列 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 に答える