0
나는 목록 상자에 이미지 목록을 만들지 만 이미지를 클릭 할 수 있어야합니다.C# wpf에서 자식 요소를 가져 오는 방법?
이미지를 클릭하면 자식 요소 (텍스트 블록)에서 값을 가져 오는 중 문제가 있습니다.
그물 전체를 검색했지만 해결 방법을 찾을 수 없습니다. 해야 당신이 당신의 DataContext 개체에 SelectedImage를 결합 할 수 선택한 항목을 얻기 위하여
`
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel Grid.Column="0" Grid.Row="0" Margin="10" Grid.ColumnSpan="2">
<TextBlock FontFamily="Tunga" FontSize="30" Foreground="White" Text="WOW" />
<TextBlock FontFamily="Tunga" FontSize="25" Foreground="White" Text="Work Out Warz" />
</StackPanel>
<StackPanel Grid.Column="4" Grid.Row="0">
<TextBlock FontFamily="Tunga" FontSize="36" Foreground="White" Text="" Name="txtname" Height="45"/>
<TextBlock FontFamily="Tunga" FontSize="25" Foreground="White" Text="" Name="txtwowid" />
</StackPanel>
<Grid Grid.Column="0" Grid.Row="1" Grid.ColumnSpan="5" >
<ListBox x:Name="LstImages" Background="Gray" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.PanningMode="HorizontalOnly" Cursor="Hand" SelectionChanged="LstImages_SelectionChanged" IsSynchronizedWithCurrentItem="True" >
<ListBox.ItemTemplate>
<DataTemplate>
<ListBoxItem>
<StackPanel Orientation="Vertical" Margin="10" >
<Button Click="Button_Click" >
<Image Source="{Binding img}" Height="250"/>
</Button>
<TextBlock Name="txtblname" Text="{Binding Title}" Foreground="White" FontSize="30" FontFamily="Tunga"/>
</StackPanel>
</ListBoxItem>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</Grid>
`
ItemTemplate을 사용하여 ListBox 내에 텍스트 블록을 만들기 때문에 값을 가져올 수 없습니다. 여기서 문제는 목록 상자가 버튼과 텍스트 블록에 대한 참조없이 여러 인스턴스를 생성한다는 것입니다. 그래서 그들에게 접근하는 것은 지루한 일이 될 것입니다. 하지만 어쩌면 당신은 목록 상자에있는 항목의 반환 유형을 확인할 수 있습니다, 그것은 유형의 콘텐츠 발표자 것입니다. 그들을 텍스트 블록으로 형변환 해보십시오. – Afaq