0

введите сюда описание изображения

Как по нажатии картинки записать в переменную текст из TextBlock x:Name="tbIdBook"?

  <ListView  x:Name="listBook" 
                           BorderThickness="0" 
                           FocusVisualStyle="{x:Null}"
                           Background="Transparent" 
                           d:ItemsSource="{d:SampleData ItemCount=5}">
                &lt;ListView.ItemTemplate&gt;
                    &lt;DataTemplate&gt;
                        &lt;Grid&gt;
                            &lt;Grid&gt;

                               &lt;TextBlock x:Name=&quot;tbIdBook&quot; Margin=&quot;110 0 0 0&quot; 
                                          VerticalAlignment=&quot;Bottom&quot;
                                          Panel.ZIndex=&quot;1&quot; Text=&quot;{Binding Id}&quot;/&gt;
                                &lt;StackPanel Orientation=&quot;Horizontal&quot;&gt;
                                      &lt;Border 
                                            Canvas.Top=&quot;30&quot;
                                            Width=&quot;100&quot;                                                
                                            Margin=&quot;0 5 0 5&quot;
                                            HorizontalAlignment=&quot;Left&quot;       
                                            BorderBrush=&quot;Blue&quot;
                                            BorderThickness=&quot;1&quot;
                                            CornerRadius=&quot;10&quot;&gt;

                                            &lt;Border.Effect&gt;
                                                &lt;DropShadowEffect BlurRadius=&quot;20&quot;
                                                    Opacity=&quot;.5&quot;
                                                    ShadowDepth=&quot;1&quot; /&gt;
                                            &lt;/Border.Effect&gt;

                                            &lt;Border Name=&quot;ReceiverColor&quot;
                                                    BorderBrush=&quot;#FF96B2E4&quot;
                                                    BorderThickness=&quot;2&quot;                                                
                                                    CornerRadius=&quot;10&quot;&gt;
                                                &lt;Grid&gt;
                                                    &lt;Border Name=&quot;Mask&quot;
                                                           Background=&quot;White&quot;
                                                           BorderBrush=&quot;#FF3B5998&quot;
                                                           BorderThickness=&quot;0&quot;
                                                           CornerRadius=&quot;10&quot;&gt;
                                                    &lt;/Border&gt;
                                                    &lt;StackPanel&gt;
                                                        &lt;Image Stretch=&quot;Fill&quot; MouseLeftButtonDown=&quot;imageBook_MouseLeftButtonDown&quot;
                                                               x:Name=&quot;imageBook&quot;  Margin=&quot;5&quot;&gt;
                                                            &lt;Image.Source&gt;
                                                                &lt;Binding Path=&quot;Image&quot;&gt;
                                                                    &lt;Binding.TargetNullValue&gt;
                                                                        &lt;ImageSource&gt;
                                                                            /Resources/imageNull.png
                                                                        &lt;/ImageSource&gt;

                                                                    &lt;/Binding.TargetNullValue&gt;

                                                                &lt;/Binding&gt;
                                                            &lt;/Image.Source&gt;
                                                        &lt;/Image&gt;
                                                        &lt;StackPanel.OpacityMask&gt;
                                                            &lt;VisualBrush Visual=&quot;{Binding ElementName=Mask}&quot; /&gt;
                                                        &lt;/StackPanel.OpacityMask&gt;
                                                    &lt;/StackPanel&gt;
                                                &lt;/Grid&gt;
                                            &lt;/Border&gt;
                                      &lt;/Border&gt;










private void imageBook_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { var text = tbIdBook.Text // не видет элемент
}

То есть, отсюда сюда обратится

введите сюда описание изображения

Naik
  • 51
  • Не вы должны ложить и забирать оттуда текст, а сам текстблок должен брать текст из ваших данных, отображать его и обновлять когда нужно. Это называется привязка данных (Data Binding). Эта технология нативно поддерживантся всеми контролами в WPF. Материалов по теме полно. – aepot May 14 '22 at 17:54
  • Text="{Binding Id}" что мешает взять этот Id там же, откуда он берётся в самом текстблоке? https://ru.stackoverflow.com/a/1116136/373567 – aepot May 14 '22 at 18:07

0 Answers0