在Fuse中的UX Markup語(yǔ)言中建立你自己Uno類(lèi),然后聲明式地使用這些自定義類(lèi)是相當(dāng)容易的。
一個(gè)簡(jiǎn)單的例子
這里是一個(gè)簡(jiǎn)單的例子,把一個(gè)數(shù)字作為文字來(lái)展示:
<pre>
using Fuse;
using Fuse.Controls;
namespace MyCompany.MyLibrary
{
public class NumericLabel: Text
{
public int Number
{
get { return int.Parse(Value); }
set { Value = value.ToString(); }
}
}
}
</pre>
這個(gè)類(lèi)現(xiàn)在能被用于當(dāng)前項(xiàng)目中的任何UX文件中,像這樣:
<pre>
<App xmlns:m="MyCompany.MyLibrary">
<m:NumericLabel Number="1337" />
</App>
</pre>
支撐、支持子元素
允許你的類(lèi)主持其它元素,像是一個(gè)引用類(lèi)別的屬性,或一個(gè)Uno.Collections.IList<T>
屬性。
英文原文為:https://www.fusetools.com/learn/guides/ux-markup-using-your-own-classes
要自動(dòng)創(chuàng)建一個(gè)UX流程,把子元素放到放到屬性中,使用[UXContent]
特性attribute,這個(gè)特性來(lái)自于屬性上的Uno.UX
命名空間。
<pre>
using Uno.Collections;
public class Fruit
{
public double Weight { get; set; }
}
public class Apple: Fruit
{
public string Origin { get; set; }
}
public class Orange: Fruit
{
}
public class FruitCart
{
[UXContent]
public IList<Apple> Apples { get { return _apples; } }
[UXContent]
public IList<Orange> Oranges { get { return _oranges; } }
}
</pre>
在UX中,你可以接著填充如下數(shù)據(jù)到這個(gè)構(gòu)建物中。
<pre>
<FruitCart>
<Apple Weight="3.2" Origin="France" />
<Apple Weight="2.2" Origin="Spain" />
<Orange Weight="2.4" />
</FruitCart>
</pre>
需要看更多關(guān)于子元素工作原理相關(guān)的信息,參看《UX markup語(yǔ)言之屬性及梆定》
Tag:Fuse, Fuseapp, Fusetools, native app
發(fā)布時(shí)間:2016年05月15日
博客被黑,挪窩簡(jiǎn)書(shū)安家……