私は次の構造を持っています:
<GridView x:Name="GVmain" SelectionChanged="GVmain_SelectionChanged_1" ItemsSource="{Binding DateItemsView}" SelectionMode="None" Visibility="Visible" Padding="120,0,0,0" ScrollViewer.HorizontalScrollMode="Enabled" ScrollViewer.VerticalScrollMode="Disabled" Grid.Row="1" ItemContainerStyle="{StaticResource GridViewItemStyleATLIST}">
<!--<StackPanel Orientation="Horizontal">-->
<GridView.ItemTemplate>
<DataTemplate>
<Grid Margin="0,0,30,0" Width="400" DataContext="{Binding}" >
<Grid.RowDefinitions>
...
Xamwinrtツールキットを使って、GVmainのselecteditemのChild Gridを選択する方法はありますか?
私はSelectedItemをその型のItemSourceにキャストすることしかできないと思います。
回答:
回答№1は2つかいます ListView.ContainerFromItem
、渡す ListView.SelectedItem
。これはあなたに ListViewItem
の SelectedItem
。その後、通常の GetDescendents
または GetFirstDescendantOfType
ビジュアルツリーを解析します。
すなわち、
// ContainerFromItem seems to have issues at times, so use ContainerFromIndex.
//var itemContainer = GVmain.ContainerFromItem(GVmain.SelectedItem);
var itemContainer = GVmain.ContainerFromIndex(GVmain.SelectedIndex);
var rootGrid = itemContainer.GetFirstDescendantOfType<Grid>();
これが幸せなコーディングに役立つことを望みます!