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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Application.Resources Style и Windows 
V
    Опции темы
interv
Дата 30.10.2012, 10:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Добрый день.

Код App.xaml
Код

<Application x:Class="License.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <Style TargetType="{x:Type Window}">
            <Setter Property="Background">
                <Setter.Value>
                    <SolidColorBrush Color="#FF934A4A" />
                </Setter.Value>
            </Setter>
        </Style>
    </Application.Resources>
</Application>

Стиль не привязывается к экземплярам класса Window, если поменять Window на Grid то к Grid стиль привязывается. В чем может быть проблемма?
PM MAIL   Вверх
Kefir
Дата 3.11.2012, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

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



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

class MyWindow : Window { }


А стиль задан для Window (не для MyWindow). Поэтому и с гридами у тебя все получается - таргет тип стиля полностью совпадает с типом контрола.
PM MAIL WWW Skype   Вверх
interv
Дата 15.11.2012, 07:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



точняк, скорее всего вы правы, но на других сайтах я прочитал такую вещь "Глобальные стили не привязываються к класу Window".
Найдено решение

App.xaml:
Код

<Style TargetType="{x:Type Window}" x:Key="DefaultWindowsStyle">
  <Setter Property="Background" Value="#FFF0F0F0"/>
</Style>


MyWindow.xaml:
Код

<Window Style="{StaticResource DefaultWindowsStyle}" ... >
...
</Window> 

PM MAIL   Вверх
Kefir
Дата 15.11.2012, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

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



Собственно "Глобальные стили не привязываються к класу Window" - это следствие того, о чем я и сказал. Не привязываются они именно потому что в 99% случаев окна создают наследуя класс Window, то есть стили у которых TargetType = Window уже не будут по умолчанию привязываться к унаследованному классу.
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




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


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

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