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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> WPF - создание интерфейса, с использованием DockPanel, Menu и др. 
:(
    Опции темы
thomas
Дата 12.6.2008, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

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



Приветствую всех.
Поведение отдельных контролов в WPF более мение освоил. Но вот создавать интерфейс с большим набором контролов что-то не получаеться.
Пробую создать окно: вверху меню, слева expander, а справа content в зависимости от того что выбрали в expander или меню.
Так вот свойство DockPanel.Dock не срабатывает.
Код


<DockPanel LastChildFill="True">
        <Menu DockPanel.Dock="Top" Height="20">
            <MenuItem Header="_File">
                <MenuItem Header="_New" InputGestureText="Ctrl+N"/>
                <MenuItem Header="_Open" InputGestureText="Ctrl+O"/>
                <MenuItem Header="_Save" InputGestureText="Ctrl+S"/>
            </MenuItem>
            <MenuItem Header="_Edit">
                <MenuItem Header="_Copy" Command="ApplicationCommands.Copy"/>
                <MenuItem Header="C_ut" Command="ApplicationCommands.Cut"/>
                <MenuItem Header="_Paste" Command="ApplicationCommands.Paste"/>
            </MenuItem>
            <MenuItem Header="_View">
                <MenuItem Header="Preview" InputGestureText="Ctrl+Y"/>
                <Separator/>
                <MenuItem Header="Show _Grid" IsCheckable="True"/>
                <MenuItem Header="Show G_uides" IsCheckable="True" IsChecked="True"/>
                <MenuItem Header="Show _Rulers" IsCheckable="True"/>
            </MenuItem>
        </Menu>
        <StackPanel Background="BlanchedAlmond" Width="200" DockPanel.Dock="Left">
            <Expander Name="ExpanderClosed" Header="Eerst" Background="#EEEEEE" Width="100" Margin="10" IsExpanded="false">
                <TextBlock>
                    Expander content 1
                </TextBlock>
            </Expander>
            <Expander Name="ExpanderOpen" Header="Tweede" Background="#EEEEEE" Width="100" Margin="10" IsExpanded="true">
                <TextBlock>
                    Expander content 2
                </TextBlock>
            </Expander>
            <Expander Name="ExpanderMetButton" Header="Button" Background="#EEEEEE" Width="100" Margin="10" IsExpanded="false">
                <StackPanel>
                    <Button Width="80">
                        <Button.ContextMenu>
                            <ContextMenu>
                                <MenuItem Header="Groot" IsCheckable="True" IsChecked="True"/>
                                <MenuItem Header="Klein" IsCheckable="True"/>
                                <MenuItem Header="Kleiner" IsCheckable="True"/>
                            </ContextMenu>
                        </Button.ContextMenu>
                        TestButton 1
                    </Button>
                    <Button Width="80">
                        TestButton 2
                    </Button>
                    <Button Width="80">
                        TestButton 3
                    </Button>
                </StackPanel>
            </Expander>
        </StackPanel>
    </DockPanel>

В качестве общего контейнера пробую применить DockPanel. Menu прилипает к верху без проблем.
А вот expander, который я мосестил в StackPanel, а точнее сама панель к левому краю окна(DockPanel)липнуть не хочет. А упрямо остаеться в центре.

У кого какие мнения по этому поводу.

Или мне надо использовать только Grid в качестве основного элемента. Задавать ему колонки и строки, а уже в них "пихать" все остальное?


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
PashaPash
Дата 13.6.2008, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

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



thomas, ты выставил LastChildFill="True" и забыл добавить тот самый контент, который у тебя должен "справа все заполнять". Поэтому fill применяется к StackPanel.
Код

...
        </StackPanel>
        <TextBlock>Some Content Here</TextBlock>
</DockPanel>



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


 




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


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

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