Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 15.01.2017
Сообщений: 6

Изменение Visibility одной страницы из другой

16.01.2017, 18:44. Показов 3058. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Короче проблема, надо одну страницу скрыть при вызове метода в другой страницы (и еще надо скрыть страницу из метода другого окна)... Вся суть состоит в получению доступа к параметрам. Много чего перепробовал - не могу.
Архитектура приложения строится так:
1. В Mainwindow есть страницы:
XML
1
2
3
4
5
<Grid>
      <Frame Name="Auto" Source="Pages/Autorization/Autorization.xaml" Visibility="Visible"></Frame>
      <Frame Name="Observe" Source="Pages/Spe******t/ObserveSpec.xaml" Visibility="Hidden"></Frame>
      <Frame Name="Add" Source="Pages/Spe******t/AddJobless.xaml" Visibility="Hidden"></Frame>
</Grid>
2. При нажатии на кнопку на странице Autorization.xaml открывается новое окно (Spe******tAuto.xaml) с вводом логина и пароля. Именно тут (при удачном вводе) надо Autorization.xaml скрыть (выставить Visibility="Hidden"), а ObserveSpec.xaml - Visible.
На прямую Auto.Visibility = Visibility.Hidden; не работает. Если создавать экземпляры страницы - тоже. Помогите плиз!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.01.2017, 18:44
Ответы с готовыми решениями:

Изменение одной страницы с другой
Здравствуйте! Возникает следующая проблема. Есть окно. Оно разделено на два фрейма. В xaml коде окна прописаны source ссылки на две...

Различие Visibility.Hidden и Visibility.Collapsed
Сразу прошу прощения за глупый вопрос,но в интернете сколько не искал,так до конца и не понял В чем различие Visibility.Hidden и...

Передача значений input из формы одной страницы в скрипт другой страницы
Добрый вечер! В общем есть у меня две страницы. На первой странице форма, в inputы формы записываются ФИО. Потом кнопка продолжить. И...

4
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,554
16.01.2017, 19:00
сделать в модели главного окна 3 свойства для каждой из страниц и прибинди эти свойства к визибилити и изменяй как тебе надо:

ViewModelMainWindow.cs
C#
1
2
3
4
5
6
private bool _isAutorizationActiv = true;
public bool IsAutorizationActiv 
{
get {return _isAutorizationActiv;}
set { _isAutorizationActiv = value; OnPropertyChanged();}
}
XML
1
2
3
4
<Grid>
      <Frame Name="Auto" Source="Pages/Autorization/Autorization.xaml" Visibility="{Binding IsAutorizationActiv, Converter={StaticResource BoolToVisibilityConverter}}"></Frame>
      ...
</Grid>
так же и для других фреймов. при удачном вводе пароля просто устанавливаешь нужные свойства в тру или фолс
0
0 / 0 / 0
Регистрация: 15.01.2017
Сообщений: 6
16.01.2017, 19:50  [ТС]
Биндинг я вообще не шарю( Что с этим делать
Converter={StaticResource BoolToVisibilityConverter}, пишет "Не удалось разрешить ресурс"?

Добавлено через 3 минуты
Да и главную проблему видимости(доступности) из кода другого окна или страницы это не решает...
0
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,554
16.01.2017, 20:28
awesome7997,

ну что я могу вам сказать? биндинги - это основа впф, решение я вам показал, не устраивает - извращайтесь другими способами.

p.s.
XML
1
Converter={StaticResource BoolToVisibilityConverter}
конвертер нужно для того, чтобы конвертировать свойство типа bool к типу Visibility
0
0 / 0 / 0
Регистрация: 15.01.2017
Сообщений: 6
17.01.2017, 15:25  [ТС]
Нашел другое решение...
1. Статическое поле (про которое писал).
2. В конструкторе отправляем статический экземпляр этого окна:

C#
1
2
3
4
5
public MainWindow()
        {
            InitializeComponent();
            PROVIDER.Get_mw = this;
        }
3. Создаем класс, который принимает этот экземпляр и делаем что хотим с элементами этого окна:

C#
1
2
3
4
5
6
7
8
9
10
11
class PROVIDER
    {
        public static bool AutoShowStatus = true;
        public static MainWindow Get_mw { get; set; }
        public void ChangeVisibility()
        {
            if (AutoShowStatus == false) Get_mw.Autor.Visibility =
               Visibility.Hidden;
            else Get_mw.Autor.Visibility = Visibility.Visible;
        }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.01.2017, 15:25
Помогаю со студенческими работами здесь

Перенос текста из одной страницы сайта в форму другой страницы
Здравствуйте. Сайт на Joomla. В админпанели есть страница с объявлением. На этой странице есть кнопка &quot;Опубликовать&quot;. При...

Обновление одной страницы из другой
Как можно сделать перегрузку страницы '1.htm' путем нажатия кнопки на странице '2.htm'?

Изменение переменной с другой страницы
у меня есть переменная называется nast которая находиться на странице PanoramaPage1 а мне нужно с ней работать с ней на другой странице...

Изменение переменной с другой страницы
у меня есть переменная называется nast которая находиться на странице PanoramaPage1 а мне нужно с ней работать с ней на другой странице...

Изменение значение поля одной БД из другой
Доброго времени суток! Помогите начинающему лотусисту, плз. Есть 2 БД на одном сервере. Одна - почтовая, другая - с поручениями. Задача...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru