powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / WPF Доступ к свойствам одного элемента из другого
3 сообщений из 3, страница 1 из 1
WPF Доступ к свойствам одного элемента из другого
    #39538489
Auratos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Разрабатываю программу для работы с изображениями. Цель - добавить следующий функционал:
1. загрузка изображений из выбранной директории в коллекцию
2. при отображении под каждой картинкой отображается имя файла и две кнопки (элемент Image) "-" и "+"
3. при нажатии на кнопку "+" выбранный файл помещается в требуемую папку и в левом верхнем углу картинки появляется и инкрементируется некий счетчик нажатий. При нажатии на кнопку "-" происходит обратное действие (когда счетчик становится равен 0, то это поле становится невидимым).

Интерфейс у меня создается по следующему принципу:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
<DataTemplate DataType="{x:Type er:Photo}">
            <Grid VerticalAlignment="Center" HorizontalAlignment="Center" Margin="6">
                <!-- Drop Shadow -->
                <Border HorizontalAlignment="Stretch" VerticalAlignment="Stretch" CornerRadius="4" Background="#44000000">
                    <Border.RenderTransform>
                        <TranslateTransform X="5" Y="5" />
                    </Border.RenderTransform>
                    <Border.BitmapEffect>
                        <BlurBitmapEffect Radius="8" />
                    </Border.BitmapEffect>
                </Border>
                <!-- Image Template -->
                <Border Padding="4" Background="White" BorderBrush="#22000000" BorderThickness="1">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                            <RowDefinition Height="26" />
                        </Grid.RowDefinitions>
                        <Image Grid.Row="0" Source="{Binding Source}" Stretch="Uniform"/>
                        <Grid Name="Counter" Grid.Row="0" HorizontalAlignment="Left" VerticalAlignment="Top" Visibility="Visible">
                            <Image Source="/Resources/Counter.jpg" Stretch="Uniform" Width="28" Height="28"/>
                            <Label Content="3" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" FontSize="16" ></Label>
                        </Grid>
                        <Grid Grid.Row="1">
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="28" />
                                <ColumnDefinition Width="*" />
                                <ColumnDefinition Width="28" />
                            </Grid.ColumnDefinitions>
                            <Image Grid.Column="0" Source="/Resources/Del.jpg" PreviewMouseUp="DelImageClick" Margin="0,2,0,0"/>
                            <Label Grid.Column="1" Content="{Binding FileName}" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Padding="0"></Label>
                            <Image Grid.Column="2" Source="/Resources/Add.jpg" PreviewMouseUp="AddImageClick" Margin="0,2,0,0"/>
                        </Grid>
                    </Grid>
                </Border>
            </Grid>
        </DataTemplate>



1 и 2 функции я реализовал + знаю уже как работать дальше с файлом выбранного изображения, т.к. получаю полное имя выбранного изображения. Подскажите, пожалуйста, как обратиться по нажатию на Image к свойству другого элемента (делать Grid видимым/невидимым и изменять текст в элементе Label) именно в выделенном блоке? (скриншот и сам проект ниже)
...
Рейтинг: 0 / 0
WPF Доступ к свойствам одного элемента из другого
    #39538492
Auratos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
WPF Доступ к свойствам одного элемента из другого
    #39538574
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
используйте шаблон MVVM и проблем не будет. Все картинки, папки и другими данные должны храниться в модели представления, тогда проблем описанной вами не будет.
В ваших события обработчиках в CodeBehind коде формы можно обратиться к именованному элементу как в WinForms или через метод FindName из класса FrameworkElement который наследуют практически все элементы управления
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / WPF Доступ к свойствам одного элемента из другого
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]