Xml файлы, на основе которых строятся экраны
Расположение: device/<application_name>/Screen/
Для того, что бы задать разметку для шага рабочего процесса необходимо установить значение атрибута Screen:
<bp:Workflow Name="Main" Controller="Main\Main.js"> <bp:Step Name="Menu" Screen="Main.xml"/> </bp:Workflow>
Обратите внимание, что в разметке экрана корневым элементов должен быть <c:Screen/>, а в разметке компонента - <c:Component/>.
Визуальные компоненты
- Button
- CheckBox
- Component
- DockLayout
- EditText
- HorizontalLayout
- HorizontalLine
- Image
- Indicator
- MemoEdit
- Screen
- ScrollView
- SwipeHorizontalLayout
- SwipeVerticalLayout
- TextView
- Toast
- VerticalLayout
- WebImage
- WebMapGoogle
- WebView
Пространство имен: BitMobile.Controls.
Объявление по умолчанию: xmlns:c="BitMobile.Controls".
Button
Кнопка, обладающая базовой анимацией касания и стандартными свойствами отображения.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:Button Visible="false"/> void Hide(Button btn) { btn.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:Button CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:Button Id="btnMain"/> Button btnMain; void HideMain() { btnMain.Visible = false; } | |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | <c:Button Id="btnMain" OnClick="BtnMain_Click"/> void BtnMain_Click(object sender, EventArgs e) { btnMain.Parent.Visible = false; } | |
OnClick | функция | разметка | Задает имя функции обработчика события контроллера, вызываемого при нажатии на кнопку. Первым параметром в функцию передается ссылка на объект Button (sender). | <c:Button Id="btnMain" OnClick="BtnMain_Click"/> void BtnMain_Click(object sender, EventArgs e) { ((Button)sender).Visible = false; } | - |
Text | строка** | разметка и скрипт | Задает текст, отображаемый на кнопке. | <c:Button Text="#hello_world#" OnClick="BtnMain_Click"/> void BtnMain_Click(object sender, EventArgs e) { ((Button)sender).Text = "some text"; } | - |
OnEvent | строка** | Задает событие, при выполнении которого будет вызвана функция, указанная в свойстве OnClick. Пример события: Back - вызывается при нажатии на кнопку "Назад" в Android устройствах. | <c:Button OnClick="BtnMain_Click" OnEvent="Back"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 |
Стили
CheckBox
Нативный флажок.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:CheckBox Visible="false"/> void Hide(CheckBox control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:CheckBox CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:CheckBox Id="cbMain"/> private CheckBox cbMain; void HideMain() { cbMain.Visible = true; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideParent(CheckBox control) { control.Parent.Visible = false; } | - |
Checked | логический | разметка и скрипт | Задает логическое состояние поля выбора. | <c:CheckBox Id="CbMain" Checked="True"/> void ChangeSelection() { cbMain.Checked = !cbMain.Checked; } | - |
Enabled | Enabled | разметка и скрипт | Задает доступность поля выбора | <c:CheckBox Id="CbMain" Checked="True"/> void ChangeSelection() { cbMain.Checked = !cbMain.Checked; } |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 |
Стили
Стиль | Версия |
---|---|
width | - |
height | - |
margin-left | - |
margin-top | - |
margin-right | - |
margin-bottom | - |
horizontal-align | - |
vertical-align | - |
dock-align | - |
Component
Контейнер. Содержит не более одного вложенного компонента. Корневой элемент подключаемого компонента. (см. Include)
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:Component Id="main"> ... </c:Component> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
DockLayout
Контейнер. Содержит любое количество вложенных компонентов. Каждый вложенный компонент добавляется на экран в соответствие с очередностью, заданной в разметке. При добавлении вложенного компонента, его положение вычисляется на основе заданного для него же стиля dock-align. После этого свободное место, для расположения следующего вложенного компонента, уменьшается на величину занятого предыдущим вложенным компонентом места.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:DockLayout Visible="false"/> void Hide(DockLayout control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:DockLayout CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:DockLayout Id="dlMain"/> function HideMain() { ((DockLayout)Variables["dlMain"]).Visible = true; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideParent(DockLayout control) { control.Parent.Visible = false; } | - |
Controls | список | скрипт, только чтение | Возвращает список визуальных компонентов, вложенных в данный контейнер. | void HideButtons(DockLayout control) { foreach(var ctrl in control.Controls) ((Button)ctrl).Visible = false; } | - |
OnClick | функция | разметка | Задает ссылку на функцию обработчик, вызываемую при нажатии на кнопку. Первым параметром в функцию передается ссылка на объект DockLayout (sender) | <c:DockLayout OnClick="DlMain_Click"/> void DlMain_Click(object sender, EventArgs e) { ((DockLayout)sender).Visible = false; } | - |
OnEvent | строка** | разметка | Задает событие, при выполнении которого будет вызвана функция, указанная в свойстве OnClick. Пример события: Back - вызывается при нажатии на кнопку "Назад" в Android устройствах. | <c:DockLayout OnClick="DlMain_Click" OnEvent="Back"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
AddChild() | Добавляет дочерний элемент управления в контейнер | object | public class MainScreen : Screen { public override void OnLoading() { DockLayout dl = new DockLayout(); dl.CssStyle = "someStyle"; for(int i=0;i<3;i++) { Button btn = new Button(); btn.Text = String.Format("Button {0}", i.ToString()); btn.OnClick += Btn_Click dl.AddChild(btn); } this.AddChild(dl); } void BtnClick(object sender, EventArgs e) { Button btn = (Button)sender; DConsole.WriteLine(btn.Text); } } | |
Стили
EditText
Однострочное поле ввода
Свойства
Свойство | Тип* | Описание | Пример | Версия |
---|---|---|---|---|
Visible | логический | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:EditText Visible="false"/> void Hide(EditText control) { control.Visible = false; } | - |
CssClass | строка** | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:EditText CssClass="main_row"/> | - |
Id | строка** | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:EditText Id="edtMain"/> EditText edtMain; void HideMain() { edtMain.Visible = false; } | - |
Parent | компонент | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { edtMain.Parent.Visible = false; } | - |
Text | строка** | Задает текст, отображаемый в поле ввода. | <c:EditText Text="#helloworld#"/> | - |
Value | переменная | Задает свойство объекта, значение которого будет изменяться по мере ввода данных в поле. | <c:EditText Value="$orderitem.Qty"/> | - |
OnChange | функция | Задает ссылку на функцию*** обработчик события, вызываемую при изменении содержимого поля. Первым параметром в функцию передается ссылка на объект EditText (sender) | <c:EditText OnChange="Edit_Change"/> void Edit_Change(object sender, EventArgs e) { EditText ctrl = (EditText)sender; DConsole.WriteLine(ctrl.Text); } | - |
OnGetFocus | функция | Задает ссылку на функцию*** обработчик события, вызываемую при выборе поля для редактирования. Первым параметром в функцию передается ссылка на объект EditText (sender). | <c:EditText OnGetFocus="Edit_OnFocus"/> void Edit_OnFocus(object sender, EventArgs e) { DConsole.WriteLine("focus acquired"); } | - |
OnLostFocus | функция | Задает ссылку на функцию*** обработчик события, вызываемую при окончании редактирования. Первым параметром в функцию передается ссылка на объект EditText (sender). | <c:EditText OnLostFocus="Edit_LostFocus"/> void Edit_LostFocus(object sender, EventArgs e) { EditText ctrl = (EditText)sender; DConsole.WriteLine("focus has been lost"); } | 2.2.2.91 |
Length**** | число | Задает постусловие: максимальная длина текста в поле при валидации. | <c:EditText /> Length="8" | - |
Required**** | логический | Задает постусловие: необходимость наличия текста в поле при валидации. | <c:EditText Required="true"/> | - |
Mask**** | строка** | Задает постусловие: регулярное выражение, применяемое при валидации. Для того, что бы проверять на соответствие всю строку, а не только ее часть, необходимо экранировать выражение символами начала(^) и конца строки($). | <c:EditText Mask="^\d+$"/> | - |
AutoFocus | логический | Задает необходимость получения фокуса компонентом при загрузке экрана. Если данное свойство задано для нескольких компонентов на одном экране, фокус получит первый. | <c:EditText AutoFocus="True"/> | - |
Keyboard | auto | default | numeric | email | url | phone | Задает тип, выводимой при редактировании, клавиатуры. Если задано значение "auto", вид клавиатуры будет зависеть от типа данных, установленных в свойстве Value. | <c:EditText Keyboard="numeric"/> | - |
Placeholder | строка** | Задает текст-подсказку, отображаемый в пустом поле. | <c:EditText Placeholder="#search#"/> | - |
Enabled | логический | Задает доступность компонента для редактирования | <c:EditText Enabled="False"/> edtName.Enabled = false; | 2.4.0.110 |
NeedSecure | логический | Задает необходимость скрытия символов, вводимых в поле | <c:EditText Id="AuthScreenPasswordET" Placeholder="#password#" NeedSecure="true"/> |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
*** - первым параметром в функцию передается ссылка на объект (sender), последующим - объекты переданные в разметке.
**** - данные свойства применяются при валидации
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
SetFocus() | Устанавливает фокус на данном элементе | function LayoutClick(sender){ $.sender.Controls[0].SetFocus(); } | - |
Стили
HorizontalLayout
Контейнер. Содержит любое количество вложенных компонентов. Каждый вложенный компонент добавляется на экран в соответствие с очередностью, заданной в разметке. Каждый следующий вложенный компонент располагается правее предыдущего. Если сумма высоты и отступов компонента меньше высоты контейнера, расположение по вертикали определяется согласно стилю vertical-align вложенного компонента.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:HorizontalLayout Visible="false"/> void Hide(HorizontalLayout control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:HorizontalLayout CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:HorizontalLayout Id="hlMain"/> void HideMain() { hlMain.Visible = false; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { hlMain.Parent.Visible = false; } | - |
Controls | список | скрипт, только чтение | Возвращает список визуальных компонентов, вложенных в данный контейнер. | void HideButtons(HorizontalLayout control) { foreach(var ctrl in control.Controls) ((Button)ctrl).Visible = false; } | - |
OnClick | функция | разметка | Задает ссылку на функцию обработчик события, вызываемую при нажатии на кнопку. Первым параметром в функцию передается ссылка на объект HorizontalLayout (sender). | <c:HorizontalLayout OnClick="HL_OnClick"/> void HL_OnClick(object sender, EventArgs e) { ((HorizontalLayout)sender.Visible = false; } | - |
OnEvent | строка** | Задает событие, при выполнении которого будет вызвана функция, указанная в свойстве OnClick. Пример события: Back - вызывается при нажатии на кнопку "Назад" в Android устройствах. | <c:HorizontalLayout OnClick="HL_Click" OnEvent="Back"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
AddChild() | Добавляет дочерний элемент управления в контейнер | object | public class MainScreen : Screen { public override void OnLoading() { HorizontalLayout dl = new HorizontalLayout(); dl.CssStyle = "someStyle"; for(int i=0;i<3;i++) { Button btn = new Button(); btn.Text = String.Format("Button {0}", i.ToString()); btn.OnClick += Btn_Click dl.AddChild(btn); } this.AddChild(dl); } void BtnClick(object sender, EventArgs e) { Button btn = (Button)sender; DConsole.WriteLine(btn.Text); } } |
Стили
HorizontalLine
Горизонтальная линия, выполняющая роль графического разделителя.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:HorizontalLine Visible="false"/> void Hide(HorizontalLine control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:HorizontalLine CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:HorizontalLine Id="hlMain"/> void HideMain() { ((HorizontalLine)Variables["hlMain"]).Visible = false; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. |
HorizontalLine hlMain; void HideRoot() { hlMain.Parent.Visible = false; } | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 |
Стили
Image
Графическое изображение. Если высота или ширина не задана (равна нулю), этот параметр вычисляется на основе пропорций исходного файла.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:Image Visible="false"/> void Hide(Image control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:Image CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:Image Id="imgMain"/> void HideMain() { imgMain.Visible = true; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideParent() { imgMain.Parent.Visible = false; } | - |
Source | строка** | разметка | Задает путь к файлу изображения. Имеет больший приоритет, чем стиль. | <c:Image Source="\public\logo.jpg"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
LoadFromStream() | Загружает картинку из потока | System.IO.Stream | void Btn_Click(object sender, EventArgs e) { System.IO.Stream s = Application.GetResourceStream("Image\Cats.jpg"); imgMain.LoadFromStream(s); imgMain.Refresh(); } |
Стили
Indicator
Бесконечный круглый индикатор загрузки. Блокирует любое взаимодействие с UI во время анимации.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:Indicator Visible="false"/> void Hide(Indicator control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:Indicator CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:Indicator Id="indMain"/> void HideIndicator() { indMain.Visible = false; indMain.Refresh(); } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideParent() { indMain.Parent.Visible = false; } | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
Start() | Запускает анимацию. Рекомендуется вызывать перед операцией синхронизации | void StartSync() { indMain.Visible = true; indMain.Start(); indMain.Refresh(); } | - | |
Stop() | Останавливает анимацию. Рекомендуется вызывать по окончании операции синхронизации, в функции обратного вызова. | void StopSync() { indMain.Stop(); indMain.Visible = false; indMain.Refresh(); } | - |
Стили
Стиль | Версия |
---|---|
width | - |
height | - |
margin-left | - |
margin-top | - |
margin-right | - |
margin-bottom | - |
horizontal-align | - |
vertical-align | - |
dock-align | - |
MediaPlayer
MemoEdit
Многострочное поле ввода
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:MemoEdit Visible="false"/> void Hide(MemoEdit control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:MemoEdit CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:MemoEdit Id="meMain"/> void HideMemo() { meMain.Visible = false; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideParent() { meMain.Parent.Visible = false; } | - |
Text | строка** | разметка и скрипт | Задает текст, отображаемый в поле ввода. | <c:MemoEdit Text="#helloworld#"/> | - |
Value | переменная | разметка | Задает свойство объекта, значение которого будет изменяться по мере ввода данных в поле. | <c:MemoEdit Value="$orderitem.Qty"/> | - |
OnChange | функция | разметка | Задает ссылку на функцию*** из основного контроллера, вызываемую при изменении содержимого поля. Первым параметром в функцию передается ссылка на объект (sender) | <c:MemoEdit OnChange="Memo_Change"/> void Memo_Change(object sender, EventArgs e) { MemoEdit ctrl = (MemoEdit)sender; DConsole.WriteLine(ctrl.Text); } | - |
OnGetFocus | функция | разметка | Задает ссылку на функцию*** из основного контроллера, вызываемую при выборе поля для редактирования. Первым параметром в функцию передается ссылка на объект (sender) | <c:MemoEdit OnGetFocus="Memo_OnFocus"/> void Memo_OnFocus(object sender, EventArgs e) { DConsole.WriteLine("Focus acquired"); } | - |
OnLostFocus | функция | разметка | Задает ссылку на функцию*** из основного контроллера, вызываемую при окончании редактирования. Первым параметром в функцию передается ссылка на объект (sender) | <c:MemoEdit OnLostFocus="Memo_LostFocus"/> void Memo_LostFocus(object sender, EventArgs e) { DConsole.WriteLine("Focus has been lost"); } | 2.2.2.91 |
Length**** | число | разметка и скрипт | Задает постусловие: максимальная длина текста в поле при валидации. | <c:MemoEdit /> Length="8" | - |
Required**** | логический | разметка и скрипт | Задает постусловие: необходимость наличия текста в поле при валидации. | <c:MemoEdit Required="true"/> | - |
Mask**** | строка** | разметка и скрипт | Задает постусловие: регулярное выражение, применяемое при валидации. Для того, что бы проверять на соответствие всю строку, а не только ее часть, необходимо экранировать выражение символами начала(^) и конца строки($). | <c:MemoEdit Mask="^\d+$"/> | - |
AutoFocus | логический | разметка | Задает необходимость получения фокуса компонентом при загрузке экрана. Если данное свойство задано для нескольких компонентов на одном экране, фокус получит первый. | <c:MemoEdit AutoFocus="True"/> | - |
Keyboard | auto |default |numeric |email | url | phone | разметка | Задает тип, выводимой при редактировании, клавиатуры. Если задано значение "auto", вид клавиатуры будет зависеть от типа данных, установленных в свойстве Value. | <c:MemoEdit Keyboard="numeric"/> | - |
Placeholder | строка** | разметка и скрипт | Задает текст-подсказку, отображаемый в пустом поле. | <c:MemoEdit Placeholder="#search#"/> | - |
Enabled | логический | разметка и скрипт | Задает доступность компонента для редактирования | <c:EditText Enabled="False"/> meMain.Enabled = false; | 2.4.0.110 |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
*** - первым параметром в функцию передается ссылка на объект (sender), последующим - объекты переданные в разметке.
**** - данные свойства применяются при вводе с использованием визуального компонента SubmitButton.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
SetFocus() | Устанавливает фокус на данном элементе | void LayoutClick(VerticalLayout container) { MemoEdit memoFirst = (MemoEdit)container.Controls[0]; memoFirst.SetFocus(); } | - |
Стили
Screen
Контейнер. Содержит не более одного вложенного компонента. Корневой элемент экрана.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:Screen CssClass="main_row"> ... </c:Screen > | - |
Controls | список | скрипт, только чтение | Возвращает список визуальных компонентов, вложенных в данный контейнер. | void HideAllControls() { forech(var control in Controls) control.Visible = false; } | - |
StyleSheet | строка** | разметка | Задает название css файла, стили которого дополнительно применяются к экрану | <c:Screen StyleSheet="Style\Order.css"> ... </c:Screen > | - |
Variables | таблица ключ - значение | разметка и скрипт | Таблица ключ-значение, заполняется в момент загрузки экрана из разметки либо явным вызовом s:Push, либо присвоением идентификатора элементу управления атрибутом Id, либо вызовом SetData при инициализации экрана. | public override void OnLoading() { forech(var item in Variables) DConsole.WriteLine(item.Key); } |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Refresh(); //the whole screen } | 3.0.0 | |
AddChild() | Добавляет элемент управления в контейнер | object | public class MainScreen : Screen { public override void OnLoading() { DockLayout dl = new DockLayout(); dl.CssStyle = "someStyle"; for(int i=0;i<3;i++) { Button btn = new Button(); btn.Text = String.Format("Button {0}", i.ToString()); btn.OnClick += Btn_Click dl.AddChild(btn); } this.AddChild(dl); //add Screen root control } void BtnClick(object sender, EventArgs e) { Button btn = (Button)sender; DConsole.WriteLine(btn.Text); } } | |
LoadFromStream() | Загружает разметку экрана из потока, строит дерево элементов управления | System.IO.Stream | void Btn_Click(object sender, EventArgs e) { Screen scr = new MyCustomScreen(); System.IO.Stream s = Application.GetResourceStream("Screen\Custom.xml"); scr.LoadFromStream(s); scr.Show(); } | |
LoadStyleSheet() | Загружает таблицу стилей | System.IO.Stream | void Btn_Click(object sender, EventArgs e) { Screen scr = new MyCustomScreen(); System.IO.Stream s = Application.GetResourceStream("Screen\Custom.xml"); scr.LoadFromStream(s); System.IO.Stream s2 = Application.GetResourceStream("Style\Custom.css"); scr.LoadStyleSheet(s2); scr.Show(); } | |
Show() | Показывает экран | void Btn_Click(object sender, EventArgs e) { Screen scr = new MyCustomScreen(); System.IO.Stream s = Application.GetResourceStream("Screen\Custom.xml"); scr.LoadFromStream(s); scr.Show(); } | ||
SetData() | Добавляет ключи в таблицу Variables. Используется для передачи аргументов при показе нового экрана. Переданные ключи могут быть использованы в разметке. | Dictionary<string,object> | public class SomeData : Entity { public int Id { get; set; } public String Name { get; set; } public SomeData(int id, String name) { Id = id; Name = name; } } void Btn_Click(object sender, EventArgs e) { Dictionary<string, object> x = new Dictionary<string, object>(); x.Add("data", new SomeData(1, "one")); x.Add("simpleData", "just a string"); Screen scr = new MyCustomScreen(); scr.SetData(x); scr.Show(); } | |
OnLoading() | Обработчик события создания экрана. Вызывается один раз после создания. | public class MainScreen : Screen { TextView tv = null; public override void OnLoading() { VerticalLayout vl = new VerticalLayout(); vl.CssStyle = "someStyle"; tv = new textView(); vl.AddChild(tv); this.AddChild(vl); //add Screen root control } int counter = 0; public override void OnShow() { counter++; tv.Text = String.Format("This screen has been showed {0} times", counter.ToString()); } } | ||
OnShow() | Обработчик показа экрана. Вызывается каждый раз после перед показом экрана |
|
Стили
Стиль | Версия |
---|---|
background-color | - |
ScrollView
Контейнер. Содержит любое количество вложенных компонентов. Каждый вложенный компонент добавляется на экран в соответствие с очередностью, заданной в разметке. Вертикальный динамический список с областью прокрутки. Сохраняет свое положение при возвращение на предыдущий экран, если компоненту присвоен Id.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:ScrollView Visible="false"/> void HideScrollView(ScrollView control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:ScrollView CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:ScrollView Id="svMain"/> ScrollView svMain; void HideMain() { svMain.Visible = true; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | <c:Button OnClick="Button_Click"/> void Button_Click(object sender, EventArgs e) { svMain.Parent.Visible = false; } | - |
Controls | список | скрипт, только чтение | Возвращает список визуальных компонентов, вложенных в данный контейнер. | void HideContent(ScrollView container) { foreach(var ctrl in container.Controls) ctrl.Visible = false; } | - |
Index | число | разметка и скрипт | Задает индекс видимого элемента. Позволяет прокрутить список до соответствующего вложенного компонента, согласно очередности добавления. | void ScrollTo(ScrollView sv, index) { sv.Index = index; } | - |
OnScroll | функция | разметка | Задает ссылку на функцию*** из основного контроллера, вызываемую при начале прокрутки списка. Первым параметром в функцию передается ссылка на объект (sender) | <c:ScrollView OnScroll="ScrollView_OnScroll"/> void ScrollView_OnScroll(object sender, EventArgs e) { ScrollView sv = (ScrollView)sender; DConsole.WriteLine(String.Format("ScrollView {0} has been scrolled", sv)); } | - |
ScrollIndex | число | скрипт, только чтение | Возвращает индекс элемента, к которому пользователь прикасался при прокрутке | void VerticalLayout_Click(obejct sender, EventArgs e) { DConsole.WriteLine(svMain.ScrollIndex.ToString()); } | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
AddChild() | Добавляет дочерний элемент управления в контейнер | object | public class MainScreen : Screen { public override void OnLoading() { ScrollView dl = new ScrollView(); dl.CssStyle = "someStyle"; for(int i=0;i<3;i++) { Button btn = new Button(); btn.Text = String.Format("Button {0}", i.ToString()); btn.OnClick += Btn_Click dl.AddChild(btn); } this.AddChild(dl); } void BtnClick(object sender, EventArgs e) { Button btn = (Button)sender; DConsole.WriteLine(btn.Text); } } |
Стили
SwipeHorizontalLayout
Контейнер. Содержит любое количество вложенных компонентов. Каждый вложенный компонент добавляется на экран в соответствие с очередностью, заданной в разметке. Позволяет прокручивать компоненты с эффектом "прилипания". Алгоритм расположения вложений соответствует HorizontalLayout.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:SwipeHorizontalLayout Visible="false"/> void UnHide(SwipeHorizontalLayout control) { control.Visible = true; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:SwipeHorizontalLayout CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:SwipeHorizontalLayout Id="shlMain"/> void UnHide() { ((SwipeHorizontalLayout)Variables["shlMain"]).Visible = true; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { shlMain.Parent.Visible = false; } | - |
Controls | список | скрипт, только чтение | Возвращает список визуальных компонентов, вложенных в данный контейнер. | void HideContent(SwipeHorizontalLayout container) { foreach(var control in container.Controls) control.Visible = false; } | - |
Index | число | разметка и скрипт | Задает индекс видимого элемента. Позволяет прокрутить контейнер до соответствующего вложенного компонента, согласно очередности добавления. | <c:SwipeHorizontalLayout Id="shlMain" Index="1"> ... </c:SwipeHorizontalLayout> void OpenMenu() { shlMain.Index = 0; } | - |
Percent | число (0..100) | разметка и скрипт | Задает меру, на сколько необходимо прокрутить вложенный элемент контейнера, что бы он остался отображенным. | <c:SwipeHorizontalLayout Percent="25"> ... </c:SwipeHorizontalLayout> | - |
Alignment | Default | Center | разметка | Задает способ отображения вложенных компонентов. Если задать значение свойства как Center, они будут центрироваться. | <c:SwipeHorizontalLayout Alignment="Center"> ... </c:SwipeHorizontalLayout> | - |
Scrollable | логический | разметка и скрипт | Задает возможность прокручивать содержимое. Еслизадать значение свойства как false, единственным способом прокрутки будет изменение свойства Index. | <c:SwipeHorizontalLayout Scrollable= "False"> ... </c:SwipeHorizontalLayout> | - |
OnSwipe | функция | разметка | Задает ссылку на функцию*** из основного контроллера, вызываемую при прокрутке. Первым параметром в функцию передается ссылка на объект (sender) | <c:SwipeHorizontalLayout OnSwipe="Layout_Swipe"> ... </c:SwipeHorizontalLayout> void Layout_Swipe(object sender, EventArgs e) { DConsole.WriteLine("OnSwipe fired"); } | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 |
Пример использования
public class MainScreen : Screen { public override void OnLoading() { SwipeHorizontalLayout dl = new SwipeHorizontalLayout(); dl.CssStyle = "someStyle"; for(int i=0;i<3;i++) { Button btn = new Button(); btn.Text = String.Format("Button {0}", i.ToString()); btn.OnClick += Btn_Click dl.AddChild(btn); } this.AddChild(dl); } void BtnClick(object sender, EventArgs e) { Button btn = (Button)sender; DConsole.WriteLine(btn.Text); } }
Стили
TextView
VerticalLayout
Контейнер. Содержит любое количество вложенных компонентов. Каждый вложенный компонент добавляется на экран в соответствие с очередностью, заданной в разметке. Каждый следующий вложенный компонент располагается ниже предыдущего. Если сумма ширины и отступов компонента меньше ширины контейнера, расположение по вертикали определяется согласно стилю horizontal-align вложенного компонента.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:VerticalLayout Visible="false"/> void Hide(VerticalLayout control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:VerticalLayout CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:VerticalLayout Id="vlMain"/> void HideMain() { vlMain.Visible = false; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { vlMain.Parent.Visible = false; } | - |
Controls | список | скрипт, только чтение | Возвращает список визуальных компонентов, вложенных в данный контейнер. | void HideButtons(VerticalLayout control) { foreach(var ctrl in control.Controls) ((Button)ctrl).Visible = false; } | - |
OnClick | функция | разметка | Задает ссылку на функцию обработчик события, вызываемую при нажатии на кнопку. Первым параметром в функцию передается ссылка на объект VerticalLayout (sender). | <c:VerticalLayout OnClick="VL_OnClick"/> void VL_OnClick(object sender, EventArgs e) { ((VerticalLayout)sender.Visible = false; } | - |
OnEvent | строка** | разметка | Задает событие, при выполнении которого будет вызвана функция, указанная в свойстве OnClick. Пример события: Back - вызывается при нажатии на кнопку "Назад" в Android устройствах. | <c:VerticalLayout OnClick="HL_Click" OnEvent="Back"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
AddChild() | Добавляет элемент управления в контейнер | object | public class MainScreen : Screen { public override void OnLoading() { VerticalLayout dl = new VerticalLayout(); dl.CssStyle = "someStyle"; for(int i=0;i<3;i++) { Button btn = new Button(); btn.Text = String.Format("Button {0}", i.ToString()); btn.OnClick += Btn_Click dl.AddChild(btn); } this.AddChild(dl); } void BtnClick(object sender, EventArgs e) { Button btn = (Button)sender; DConsole.WriteLine(btn.Text); } } |
Стили
WebImage
Изображение, получаемое по внешней ссылке.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:WebImage Visible="false"/> void Hide(WebImage control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:WebImage CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:WebImage Id="wiMain"/> void HideMain() { wiMain.Visible = false; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { wiMain.Parent.Visible = false; } | - |
Url | строка** | разметка | Задает полный или относительный адрес изображения. | <c:WebImage Url="http://imgstr.com/im.jpg"/> | - |
UrlType | Absolute |Relative | разметка | Задает вид адреса изображения: "Absolute" - абсолютный адрес; "Relative" - адрес, относительно <solution_url>/image/, например "/my_img.jpg" транслируется в "http://bitmobile2.cloudapp.net/demosr/image/my_img.jpg", если адрес решения"http://bitmobile2.cloudapp.net/demosr" | <c:WebImage UrlType="Absolute"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 |
Стили
WebMapGoogle
Web версия карт GoogleMaps.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:WebMapGoogle Visible="false"/> void Hide(WebMapGoogle control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:WebMapGoogle CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:WebMapGoogle Id="wmgMain"/> WebMapGoogle wmgMain; void HideMain() { wmgMain.Visible = true; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { wmgMain.Parent.Visible = false; } | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 | |
AddMarker(caption, latitude, longitude, color) | Добавляет маркер на карту | caption - заголовок маркера; latitude - широта точки; longitude - долгота точки; color - цвет маркера ("red", "green", "blue", "yellow", "orange") | void AddOutletLocation(Catalog.Outlet outlet) { wmgMain.AddMarker("#marker#", outlet.Lat, outlet.Lon, "red"); } | - |
Стили
WebView
Веб страница, встроенная в разметку.
Свойства
Свойство | Тип* | Область | Описание | Пример | Версия |
---|---|---|---|---|---|
Visible | логический | разметка и скрипт | Задает видимость компонента. Если он невидим, его размеры, тем не менее, учитываются в контейнерах | <c:WebView Visible="false"/> void Hide(WebView control) { control.Visible = false; } | - |
CssClass | строка** | разметка | Задает название CSS класса, стили которого будут применяться к данному компоненту | <c:WebView CssClass="main_row"/> | - |
Id | строка** | разметка | Задает идентификатор компонента в области видимости данного экрана. Таким образом можно получить доступ к его свойствам из произвольного места разметки или кода контроллера. Из контроллера доступ к компоненту возможен через объявленную переменную с соответствующим типом и именем, совпадающим с указанным в атрибуте Id, либо через свойство Variables | <c:WebView Id="wvMain"/> WebView wvMain; void HideMain() { wvMain.Visible = false; } | - |
Parent | компонент | разметка и скрипт, только чтение | Возвращает ссылку на родительский компонент. Возвращает null если текущий объект на верху дерева. | void HideRoot() { wvMain.Parent.Visible = false; } | - |
Url | строка** | разметка | Задает полный или относительный адрес страницы. | <c:WebView Url="https://google.com"/> | - |
* - в качестве параметра можно передавать константу, переменную, функцию или свойства соответствующего типа
** - при установке строкового свойства в разметке, применяются особые правила форматирования текста.
Методы
Метод | Описание | Параметры | Пример | Версия |
---|---|---|---|---|
Refresh() | Перерисовывает элемент управления, вызов необходим при смене стилей. | void Btn_Click(object sender, EventArgs e) { Buttob btn = (Button)sender; btn.CssStyle = "someNewStyle"; btn.Text = "Style changed"; btn.Refresh(); } | 3.0.0 |
Стили
Невизуальные компоненты
Объявление по умолчанию: xmlns:s="BitMobile.ValueStack". Задает идентификатор переменной статуса итерации Переменная статуса: serverUrl - адрес сервера в формате host/bitmobile/solution userId - ID клиента, который возвращается при выполнении get запроса "GetUserId" password - пароль OnPushMessageУсловные операторы ветвления
Атрибуты
Компонент Атрибут Тип Описание Пример Версия If Test строка Задает логическое выражение Test="$user_name != $current_user.Name" - Пример:
<s:If Test="$user_name != $current_user.Name">
<s:If Test="$CheckUserName($user_name)">
<c:TextView Text="$user_name"/>
<c:HorizontalLine />
</s:If>
</s:If>
<s:Else>
<c:TextView Text="$current_user.Info"/>
</s:Else>
Внедряет в разметку указанный подключаемый компонент
Атрибуты
Атрибут Тип Описание Пример Версия File строка Задает имя файла с внедряемым кодом File="Navigator.xml" - Пример:
<c:Component xmlns:c="BitMobile.ClientModel3.UI" xmlns:s="BitMobile.ValueStack">
<c:DockLayout CssClass="navigator">
<c:Button CssClass="back" OnClick="Back_Click"/>
<c:Button CssClass="forward" OnClick="Forward_Click"/>
<c:TextView Text="$screen_name"/>
</c:DockLayout>
</c:Component>
<s:Push Id="screen_name" Value="#user_info#"/>
<s:Include File="Components\Navigator.xml"/>
Производит итерацию по заданной коллекции
Атрибуты
Атрибут Тип Описание Пример Версия Id строка Задает идентификатор ссылки на текущий элемент итерируемой коллекции Id="current_user" - Value коллекция Задает итерируемую коллекцию Value="$users" - Status строка Свойства Тип Описание Пример Версия Index число, целое Возвращает порядковый номер текущего элемента в итерации Value="$status_users.Index" - Status="status_users" - Пример:
<s:Iterator Id="current_user" Value="users" Status="status_users">
<s:Iterator Id="current_phone" Value="$GetPhonesByUser($current_user)">
<s:Push Id="index" Value="$status_users.Index"/>
<c:TextView Text="{index}: {$current_phone}"/>
<c:HorizontalLine/>
</s:Iterator>
</s:Iterator>
Свойства
Свойство Тип Описание Пример Версия IsInitialized логический Возвращает true, если приложение зарегистрировано для приема\ отправки уведомлений. PushNotification.IsInitialized
Методы
Метод Описание Параметры Исключения Пример Версия InitializePushService() Регистрация приложения для приема\ отправки пуш уведомлений из сервера конкретного решения. PushNotification.InitializePushService("http://192.168.0.152/bitmobile/synchro3",
"15f3904b-942b-11e5-bb64-f8a963e4bf15", "sr");
Для обработки поступающих пуш сообщений нужно переопределить метод OnPushMessage(string message) в классе Solution унаследованном от Application. public override void OnPushMessage(string message)
{
DConsole.WriteLine($"NEW MESSAGE = {message}");
}
3.0.0.0 PushMessage Отправка push уведомления из прикладного кода. Обязательно указать id пользователей-получателей PushNotification.PushMessage("Hello", new[] { "15f3904b-942b-11e5-bb64-f8a963e4bf15", "8d3e3420-f723-11e5-80fd-902b3416d383" });
-
Добавить комментарий