Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
 Аватар для 5665tm
171 / 120 / 14
Регистрация: 17.06.2013
Сообщений: 386

Дочернее окно в правом нижнем углу основного

05.03.2014, 10:03. Показов 2436. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть главное окно MainWindow в котором таблички, менюшки и прочее.
При нажатии на пункт меню "Фильтры" появляется дочернее окно. Как сделать что бы это окно по умолчанию появлялось в нижнем правом углу основного окна? В WindowStartupLocation ничего подобного нет.
Миниатюры
Дочернее окно в правом нижнем углу основного  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.03.2014, 10:03
Ответы с готовыми решениями:

Как разместить окно в нижнем правом углу?
Стандартное решение работает некорректно (скрин приложил), надо чтобы окно находилось в углу впритык, подскажите в чем может быть проблема?...

Как позиционировать окно в правом нижнем углу экрана независимо от диагонали?
Как позиционировать окно в правом нижнем углу экрана независимо от диагонали?Установка свойств Window.Top и Window.Left не помогает.

Запускать программу в нижнем правом углу
Необходимо, чтобы при запуске программы она открывалась в нижнем правом углу (возле трея), как это сделать можно?

3
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
05.03.2014, 20:33
Метод ShowWindowAtRightBottomAngle() открывает окно showed по правому нижнему углу parent
C#
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
public partial class MainWindow : Window
{
    public MainWindow() {
        InitializeComponent();
    }
 
    public void ShowWindowAtRightBottomAngle(Window showed, Window parent) {
        showed.WindowStartupLocation = WindowStartupLocation.Manual;
        // Координата правого нижнего угла минус размер дочернего окна
        double top = parent.Top + parent.ActualHeight - showed.Height;
        // При слишком большом дочернем окне отображение будет неверным
        // Этого стоит избежать
        Debug.Assert(top > 0);
        showed.Top = top;
 
        double left = parent.Left + parent.ActualWidth - showed.Width;
        Debug.Assert(left > 0);
        showed.Left = left;
        showed.Show();
    }
 
    private void ButtonClick(object sender, RoutedEventArgs args) {
        ShowWindowAtRightBottomAngle(new DummyWindow(), this);
    }
}
1
29 / 29 / 10
Регистрация: 17.08.2010
Сообщений: 95
07.03.2014, 18:14
Привет.
Задача решается еще проще, если задать HorizontalAlignment=Right и VerticalAlignment=Bottom для вашего попапного окна. Само же окно делать чилдреном LayoutRoot с необходимым Columnspan и Rowspan. Как видите, все решается только разметкой, никакого C# кода.

Но ни этот пример, ни то, что вам предлагают не "профессиональны". Как только у родительского контрола появится вертикальный скролбар, попапное окно уедет вниз в невидимую область.

Решения есть, но они не тривиальны.
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
11.03.2014, 14:32
Цитата Сообщение от mabanza Посмотреть сообщение
Как видите, все решается только разметкой
Я ничего не вижу, кроме текста. Наиболее "профессионально" было бы привести код.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.03.2014, 14:32
Помогаю со студенческими работами здесь

Поменять местами элементы в верхнем правом и нижнем правом углу массива
Создать массив размерностью MxN, элементы которого читаются из внешнего файла (*txt, *.xls и т.п) Вывести его на экран. Проверить: ...

Определить имеются ли числа, оканчивающиеся нулем, в правом верхнем или в правом нижнем углу матрицы
помогите написать программу для. Дан двумерный массив целых чисел. имеются ли числа, оканчивающиеся нулем, в правом верхнем или в правом...

Определить, какой элемент двумерного массива меньше: расположенный в нижнем правом или в нижнем левом углу
Описать Какой элемент двумерного массива меньше: расположенный в нижнем правом или в нижнем левом углу; Какой элемент двумерного...

Окошко в правом нижнем углу
Здрасте ! Подскажите как сделать что бы прога запускалась в правом нижнем углу при разном разрешении экрана как mailAgent или qip ...

Форма в правом нижнем углу
Помогите пожалуйста с кодом. Как возможно сделать так, чтобы при нажатии на button1 окно перемещалось в правый нижний угол?


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru