カスタムユーザーコントロールを備えたグリッドビューがあります。ユーザーコントロールの XAML は次のとおりです。
<UserControl
x:Class="App11.VideoPreview"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App11"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="250"
d:DesignWidth="250">
<Grid>
<Button Height="250" Width="250" Padding="0" BorderThickness="0">
<StackPanel>
<Image Name="image1" Height="250" Width="250" Stretch="None"/>
<Grid Margin="0,-74,0,0">
<Grid.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0" Opacity="0.5">
<GradientStop Color="Black"/>
<GradientStop Color="#FF5B5B5B" Offset="1"/>
</LinearGradientBrush>
</Grid.Background>
<TextBlock x:Name="textBox1" TextWrapping="Wrap" FlowDirection="RightToLeft" Foreground="White" Padding="5"/>
</Grid>
</StackPanel>
</Button>
</Grid>
</UserControl>
ボタンがグリッドビュー内でクリックされたときにクリックイベントをキャプチャするにはどうすればよいですか? GridView_ItemClick
gridviewページの.csで試しましたが、usercontrolページの.csGridView1_SelectionChanged
でも試しました
両方ともうまくいきませんでした。理由はありますか?button_Click
編集:うまくいきました。Frame.Navigate(typeof(PageName));
I can't change frame from usercontrolを使用してフレームを変更しようとしました。ビルド関数で現在のフレームをユーザー コントロールに送信してから、次のようにフレームを変更する必要がありました。
Frame frame;
public VideoPreview(Frame f)
{
this.InitializeComponent();
frame = f;
}
private void Button_Click(object sender, RoutedEventArgs e)
{
frame.Navigate(typeof(PlayVideo));
}