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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> использование стиля, "{x:Type igDP:FieldLayoutSettings}" 
:(
    Опции темы
namespace
  Дата 12.11.2008, 23:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



есть infragrafics-овый грид, вернее их много, FieldLayoutSettings у них одинаковый
Код

<igDP:XamDataGrid ...>
    <igDP:XamDataGrid.FieldLayoutSettings>
        <igDP:FieldLayoutSettings AllowAddNew="True" AddNewRecordLocation="OnTopFixed" ... />
    </igDP:XamDataGrid.FieldLayoutSettings>
</igDP:XamDataGrid>

встал вопрос о том что неправильно это все дело везде дублировать и руками Ctrl-C Ctrl-V при изменении все время делать
сделал Resources.xaml
Код

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:igDP="http://infragistics.com/DataPresenter">
    <Style x:Key="DataGridSettings" TargetType="{x:Type igDP:FieldLayoutSettings}">
        <Setter Property="AutoGenerateFields" Value="false"/>
        ...
    </Style>
</ResourceDictionary>

изменил App.xaml
Код

<Application x:Class="GeographicalObjectApplication.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="MainWindow.xaml">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Resources.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

меняю первый (рабочий) фрагмент кода на
Код

<igDP:XamDataGrid ... FieldLayoutSettings="{StaticResource DataGridSettings}">

запускаю...
на строчку
Код

<Style x:Key="DataGridSettings" TargetType="{x:Type igDP:FieldLayoutSettings}">

выскакивает: 
'FieldLayoutSettings' type must derive from FrameworkElement or FrameworkContentElement.  Error at object 'DataGridSettings' in markup file 'GeographicalObjectApplication;component/Resources.xaml' Line 4 Position 37.

что неправильно?
PM MAIL   Вверх
Partizan
Дата 13.11.2008, 09:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

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



namespace, Стиль должен применяться к контролу, а не к FieldLayoutSettings
если уж хочется через StaticResource:

Код

<Application x:Class="GeographicalObjectApplication.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:igDP="http://infragistics.com/DataPresenter"
    StartupUri="MainWindow.xaml">
    <Application.Resources>
          <igDP:FieldLayoutSettings x:Key ="DataGridSettings"  AllowAddNew="True" AddNewRecordLocation="OnTopFixed" ... />
    </Application.Resources>
</Application>


И вот теперь уже можно писать

Код

<igDP:XamDataGrid ... FieldLayoutSettings="{StaticResource DataGridSettings}">


Это сообщение отредактировал(а) Partizan - 13.11.2008, 09:17


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
namespace
Дата 13.11.2008, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Большое спасибо!
А с точки зрения WPF вынести в статические ресурсы параметры нескольких одинаковых гридов - это правильный подход?
PM MAIL   Вверх
Partizan
Дата 13.11.2008, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

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



namespace, ну а почему бы и нет? Если вынести в ресурсы, то у вас будет один единственный объект FieldLayoutSettings, на который все ваши XamDataGrid будут ссылаться.

Подход вполне оправданный smile


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
namespace
Дата 13.11.2008, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



с одним свойством понятно, а вот например:
Код

<igDP:XamDataGrid Grid.Column="1" Grid.Row="2" Margin="0,0,3,0" Name="dataGrid" xmlns:igDP="http://infragistics.com/DataPresenter"
     FieldLayoutSettings="{StaticResource DataGridSettings}" 
     Theme="Generic" BorderThickness="1" GroupByAreaLocation="AboveDataArea" ClipToBounds="False" 
     AutoFit="True" IsGroupByAreaExpanded="False" IsNestedDataDisplayEnabled="True" />

возможно сделать чтобы, например, вот эти свойства:
Код

Theme="Generic" BorderThickness="1" GroupByAreaLocation="AboveDataArea" ClipToBounds="False" 
AutoFit="True" IsGroupByAreaExpanded="False" IsNestedDataDisplayEnabled="True" 

брались из того же ресурсного файла, что и FieldLayoutSettings, но чтобы не надо было для каждого свойства писать
Код

свойство="{StaticResource ресурс}" 

?

Это сообщение отредактировал(а) namespace - 13.11.2008, 11:58
PM MAIL   Вверх
Partizan
Дата 13.11.2008, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

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



namespace, ну это уже придётся реализовать стилями...

Код

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:igDP="http://infragistics.com/DataPresenter">

    <igDP:FieldLayoutSettings x:Key ="fldLayoutSettings"  AllowAddNew="True" AddNewRecordLocation="OnTopFixed" ... />

    <Style x:Key="DataGridSettings" TargetType="{x:Type igDP:XamDataGrid}">
        <Setter Property="FieldLayoutSettings" Value="{StaticResource fldLayoutSettings}"/>
        <Setter Property="Theme" Value="Generic"/>
        ...и т.д.
    </Style>
</ResourceDictionary>





--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
namespace
Дата 13.11.2008, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



большое спасибо, многое стало ясным  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




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


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

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