Ich habe eine UserControl
innerhalb von jedem GridView
Element. Es ist wie unten.UWP: UserControl überschreiben GridView Element klicken
<GridView Name="SymbolItemsGridView"
Grid.Column="0"
Background="#333333"
SelectionMode="None"
IsItemClickEnabled="True"
ItemsSource="{x:Bind Items}"
HorizontalAlignment="Stretch"
Margin="15,5,10,15"
ItemClick="SymbolGridView_ItemClick">
<GridView.ItemTemplate>
<DataTemplate x:DataType="data:SymbolItem">
<local:SymbolControl Margin="10"/>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
Die SymbolControl
oben ist ein UserControl
, ich änderte ihren ContentPresenter
Stil
<ContentPresenter CornerRadius="40"
Height="40"
Width="40"
Background="Cyan"
x:Name="ContentPresenter"
Content="{TemplateBinding Content}"
Padding="0" />
So ist die einzige Taste in diesem UserControl
der runden Form zu runden ist.
<Button Name="SymbolButton"
Content="{x:Bind PhoneticSymbolItem.Text}"
Style="{StaticResource VowelSymbolButton}" />
Meine Frage ist, dass die ItemClick="SymbolGridView_ItemClick"
Event-Handler funktioniert nur, wenn ich um die Ecke des Gridview-Element klicken (der schwarze Teil oben). Wenn ich auf den runden Knopf klicke, funktioniert es nicht.
Ich weiß, dass es wahrscheinlich ist, weil die Schaltfläche oben auf dem GridView-Element ist und das Klicken auf die Schaltfläche nur das Schaltfläche-Klick-Ereignis auslöst. Aber die Medienressource, die ich einstellen möchte, ist in ItemsSource="{x:Bind Items}"
der GridView. Ich weiß nicht, wie ich es an mein UserControl übergeben und vom Button-Click-Event verwenden soll.
Oder wenn es eine Möglichkeit gibt, das Button-Click-Ereignis zum GridView-Element zu öffnen, sollte es auch funktionieren. Ich hoffe meine Frage ist klar, irgendwelche Ideen?
Wofür benötigen Sie die Schaltfläche, wenn Sie keine Klickereignisse verarbeiten möchten? –