1

私はサイトとあらゆる場所を検索しますが、この問題について誰も知らないようです. 基本的に、タップまたはその他のイベントを使用して Grid.Row をクリック可能にしたい! 問題は、テキストがある場所でのみ機能することです。写真を見てください。空のスペースでもクリックできるようにしたいので、基本的に行の表面全体です。

ここに画像の説明を入力

Nokia トランスポートや Windows Phone 設定ページなどの多くのアプリケーションがそのようなものであり、アプリケーションが動作するように正確に動作する可能性があることを私は知っています!

私はすべてを試しましたが、グリッドのタップイベントを試しました:テキスト領域でのみクリックできるだけでまだ機能しませんでした

Stackpanel を試しましたが、チャンスはありません

Toolkit Gestureイベントも試してみましたが、チャンスはありません

誰かがそれを手伝ってくれませんか!

4

1 に答える 1

1

入力イベントは透明な領域を通り抜けます。この場合、私が通常行うことは、ほとんど透明な背景色を使用することです。

<Grid HorizontalAlignment="Stretch">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>

    <Grid Grid.Row="0" Background="#01ffffff" Tap="UIElement_OnTap" HorizontalAlignment="Stretch">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>

        <TextBlock Grid.Column="0">Test Block</TextBlock>
        <TextBlock Grid.Column="1">3000</TextBlock>
    </Grid>
</Grid>

この例では、最も外側のグリッドの各行が、行全体にまたがる別のグリッドであり、Tapイベントを処理することに注意してください。

それでも、この例で重要なのはBackground="#01ffffff"です。この色はほとんど透明ですが、Tap イベントをキャッチするのに十分なほど不透明です。

幸運を!

編集:前の回答は機能しますが、Background="Transparent"を設定することもできます。Background は何かに設定する必要があり、タッチ イベントをキャプチャするための未設定の値にしないでください。

于 2013-03-01T02:22:44.737 に答える