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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Резиновая верстка в Silverlight, Как сделать резиновую верстку. 
V
    Опции темы
Bladerender
Дата 13.8.2009, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



НАпоролся тут на непонятки. Если у меня сайт - это и есть сильверлайт-приложение. Тоесть просто заключено в html-контейнер.
Как мне сделать так, что бы на разных разрешениях экрана это приложение масштабировалось (типа постоянно было на полный экран и юзало всю область браузера). В Blend когда делаеш дизайн, выставляется размер холста. Он как-то подлежит масштабированию так как html?
PM MAIL   Вверх
likegift
Дата 13.8.2009, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



просто убираешь размеры контрола в xaml файле и на веб странице корректируешь размеры контейнера с объектом сильверлайта.
PM MAIL   Вверх
Bladerender
Дата 14.8.2009, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Так когда убрать размеры XAML-полотна, то оно стает автоматом очень очень маленькое. Как же там елементы расставлять и т.д.?

Это сообщение отредактировал(а) Bladerender - 14.8.2009, 11:26
PM MAIL   Вверх
Anyone
Дата 14.8.2009, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Можно посмотреть на код, а то так тяжело что-либо посоветовать?
PM MAIL   Вверх
Bladerender
Дата 14.8.2009, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Так а какой код. В MsBlend создан проект "Приложение Сильверлайт". В этом проекте на Page.xaml я ставлю две кнопки. Одна в верхнем левом углу, другая в нижнем правом. И мне нада теперь, что бы при любом разрешении экрана эти кнопки так и находились у пользователя в браузере в видимой области в верхнем левом и нижнем правом углу. С верхней левой понятно проблем нету, а вот с нижней правой получается что если page.xaml размер 640*480, а у полоьзователя монитор 1028*768, то нижняя правая кнопка находится практически посреди экрана браузера а не в углу, где ей положено быть. Я не борюсь с конкретной проблемой своего приложения а хочу понять принцыпи работы резиновой верстки в SilverLight.
PM MAIL   Вверх
likegift
Дата 14.8.2009, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата(Bladerender @ 14.8.2009,  18:30)
Так а какой код. В MsBlend создан проект "Приложение Сильверлайт". В этом проекте на Page.xaml я ставлю две кнопки. Одна в верхнем левом углу, другая в нижнем правом. И мне нада теперь, что бы при любом разрешении экрана эти кнопки так и находились у пользователя в браузере в видимой области в верхнем левом и нижнем правом углу. С верхней левой понятно проблем нету, а вот с нижней правой получается что если page.xaml размер 640*480, а у полоьзователя монитор 1028*768, то нижняя правая кнопка находится практически посреди экрана браузера а не в углу, где ей положено быть. Я не борюсь с конкретной проблемой своего приложения а хочу понять принцыпи работы резиновой верстки в SilverLight.

этот код должен спасти отца русской демократии smile

Код

<UserControl x:Class="Testlayout.Page"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    >
    <Grid x:Name="LayoutRoot" Background="Green">
            <Button Width="100" Height="30" VerticalAlignment="Top" HorizontalAlignment="Left"/>
            <Button Width="100" Height="30" VerticalAlignment="Bottom" HorizontalAlignment="Right" />
    </Grid>
</UserControl>

PM MAIL   Вверх
Bladerender
Дата 18.8.2009, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Действительно когда сделать такое выравнивание, то работает. А что же делать когда нужно две княпки что бы одна к другой цеплялась?

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
========|===========|
                  |                         |
========|===========|






                                                                                               |========|===========|
                                                                                               |                  |                         |
                                                                                               |========|===========|

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


Просто пытаюсь вьехать в основы резиновой верстки и никак что-то не вкурю. Размечаю LayoutRoot маркерами вдоль и поперек и получается что уже привязка компонент идет к этим маркерам а не к границам ЮзерКонтрол. Как-то оно так  smile  А как же сделать тогда что бы эти маркеры тоже динамически смещались или привязывались к краям границы?

Там в этой разметке замочки есть. Как ими пользоватся? (не всмысле кликать по них а всмысле что бы делать масштабируемое приложение).

Это сообщение отредактировал(а) Bladerender - 18.8.2009, 16:11
PM MAIL   Вверх
likegift
Дата 18.8.2009, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Bladerender

тебе для общего развития или для конкретного ТЗ?
PM MAIL   Вверх
Bladerender
Дата 18.8.2009, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Вообще лдя конкретного ТЗ, но я могу в нем резиновую верстку и не делать. Так что получается что для общего развития и что бы не стыдно было, что сайт на полный экран не разворачивается. ТЗ тут собственно непричем, так как експериментирую в другом проекте на базовых примитивах. Где вообще про это можно почитать или посмотреть?
PM MAIL   Вверх
Yurii84
Дата 18.8.2009, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Bladerender, Тебе нужно почитать про контейнеры, http://msdn.microsoft.com/ru-ru/library/ms754152.aspx
 каждый контейнер по своему выравнивает содержимое, например StackPanel выравнивает элементы внутри себя горизонтально либо вертикально, Grid позволяет гибко настраивать расположение, если ты разобьешь Grid с помощью маркера пополам то обе стороны будут держаться пропорции 50/50 при растяжении сужении, выдели маркер и посмотри в свойствах есть поле для ввода значения в пикселях и параметр star или pixels, например ставишь 50 и star то у тебя ячейка будет изменяться в пропорции, а если 50 pixels выставишь то ячейка будет сторо 50 пикселей, замыкание замочка тоже самое что поставить pixels.

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

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


 




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


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

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