Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как сделать окно полностью прозрачным, при этом в центре непрозрачный контент 
V
    Опции темы
ДобренькийПапаша
Дата 27.9.2011, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: 2
Всего: 7



Без предисловий, касающихся того, откуда взялась такая задача.
Задача такая: надо сделать максимизированное окно, которое будет полностью прозрачно и при этом содержать в центре некий непрозрачный контент (по сути дела - непрозрачный Border, содержащий Grid, наполненый элементами). Непрозрачная часть должна располагаться строго по центру экрана.

Вот это должно будет располагаться в центре.
Код

<Border Style="{StaticResource DarkBorder}">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="Auto" />
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>         
        </Grid>
    </Border>



--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
Gvozdin
Дата 27.9.2011, 09:56 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 172
Регистрация: 9.8.2011
Где: Москва

Репутация: 8
Всего: 8



Код

<Window WindowStyle="None" WindowState="Maximized" AllowsTransparency="True" Background="Transparent">
</Window>

--------------------
http://gvozdin.ru
PM MAIL WWW   Вверх
ДобренькийПапаша
Дата 28.9.2011, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: 2
Всего: 7



Gvozdin, если поставить Background="Transparent", то окно на заднем плане обрабатывает клик, это ещё что за фигня (хотя клик должен пройти по транспарентной части)?


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
hexzo
Дата 28.9.2011, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 178
Регистрация: 30.1.2011

Репутация: нет
Всего: нет



ДобренькийПапаша
Цитата

Gvozdin, если поставить Background="Transparent", то окно на заднем плане обрабатывает клик, это ещё что за фигня (хотя клик должен пройти по транспарентной части)? 

Наоборот было бы странное если бы элемент управления вёл себя по разному в зависимости от своего цвета.

Стоп, или наоборот оно пропускает сквозь себя клик!?  smile 

Это сообщение отредактировал(а) hexzo - 28.9.2011, 10:59
PM MAIL   Вверх
Gvozdin
Дата 28.9.2011, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 172
Регистрация: 9.8.2011
Где: Москва

Репутация: 8
Всего: 8



Боюсь что единственным решением для такой ситуации это сделать Background="#01000000" - почти что прозрачный фон.

По моему это уже внутренний механизм винды такой, что если пиксель окна полностью прозрачный то нажатие мыши проскакивает дальше. Если уж хочется запретить клики мышью, то глобальный хук может быть поможет.

Это сообщение отредактировал(а) Gvozdin - 28.9.2011, 15:25
--------------------
http://gvozdin.ru
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0646 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.