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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как программно изменить значение в Style 
:(
    Опции темы
mur88
Дата 19.6.2011, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Как программно изменить значение Width и Height?

Код

 <Window.Resources>
        <local:Executives x:Key="Executives"/>

        <Style x:Key="ListBoxItemStyle" TargetType="{x:Type ListBoxItem}">
            <Setter Property="Padding" Value="3"/>
            <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
            
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type ListBoxItem}">
                        <Grid Background="{TemplateBinding Background}" Width="480" Height="280">
                            <VisualStateManager.VisualStateGroups>
                                <VisualStateGroup x:Name="CommonStates">
                                    <VisualStateGroup.Transitions>

PM MAIL   Вверх
-Mikle-
Дата 20.6.2011, 07:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

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



Вообще, не правильно менять размеры вручную, тем более в темплейте. Но если очень уж хочется, то:

Код

<Grid Background="{TemplateBinding Background}" Width="{TemplateBinding Width}" Height="{TemplateBinding Height}">

Теперь, меняй размеры самого ListBoxItem.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
mur88
Дата 20.6.2011, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



У меня в ListBox.Items находятся классы Executive, которые состоят из двух строковых свойств.
Код

foreach (ListViewItem tvi in this.ExecutivesListBox.Items)
{
     tvi.Width = 77;
}

Выбрасывает исключение. 
Не удалось привести тип объекта "Kiosk.Executive" к типу "System.Windows.Controls.ListViewItem".
PM MAIL   Вверх
Kefir
Дата 21.6.2011, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


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

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



Код

foreach (var item in this.ExecutivesListBox.Items) {
    var listViewItem = this.ExecutivesListBox.ItemContainerGenerator.ContainerFromItem(item) as FrameworkElement;
    if(listViewItem != null) listViewItem.Width = 77;
}

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


 




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


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

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