01.
private
class
MailListVisualItem : SimpleListViewVisualItem
02.
{
03.
private
LightVisualElement element1;
04.
private
LightVisualElement element2;
05.
private
StackLayoutPanel layout;
06.
07.
protected
override
void
CreateChildElements()
08.
{
09.
base
.CreateChildElements();
10.
11.
this
.layout =
new
StackLayoutPanel();
12.
this
.layout.EqualChildrenWidth =
false
;
13.
this
.layout.Margin =
new
Padding(20, 0, 0, 0);
14.
15.
this
.element1 =
new
LightVisualElement();
16.
element1.TextAlignment = ContentAlignment.TopLeft;
17.
element1.Size =
new
Size(260, 0);
18.
element1.MinSize =
new
Size(260, 0);
19.
element1.NotifyParentOnMouseInput =
true
;
20.
element1.ShouldHandleMouseInput =
false
;
21.
this
.layout.Children.Add(
this
.element1);
22.
23.
this
.element2 =
new
LightVisualElement();
24.
element2.TextAlignment = ContentAlignment.TopLeft;
25.
element2.Size =
new
Size(80, 0);
26.
element2.NotifyParentOnMouseInput =
true
;
27.
element2.ShouldHandleMouseInput =
false
;
28.
this
.layout.Children.Add(
this
.element2);
29.
30.
this
.Children.Add(
this
.layout);
31.
}
32.
33.
protected
override
void
SynchronizeProperties()
34.
{
35.
base
.SynchronizeProperties();
36.
37.
if
(
this
.Data.GetType() !=
typeof
(ListViewDataItemGroup))
38.
{
39.
this
.Text =
""
;
40.
var bodyText =
this
.Data[
"BodyText"
] ==
null
?
""
:
this
.Data[
"BodyText"
].ToString().Replace(System.Environment.NewLine,
" "
);
41.
42.
this
.element1.Text =
"<html><span>"
+
43.
"<span style=\"font-size:12\">"
+
this
.Data[
"From"
] +
"</span>"
+
44.
"<br><span style=\"color:#13224D;font-family:Segoe UI;font-size:10\">"
+
this
.Data[
"Subject"
] +
"</span>"
+
45.
"<br><span style=\"color:#13224D;font-family:Segoe UI;font-size:10\">"
+ bodyText +
"</span></span></html>"
;
46.
47.
this
.element2.Text =
"<html><span> </span>"
+
48.
"<br><span style =\"color:#13224D;font-family:Segoe UI;font-size:10\">"
+
this
.Data[
"ReceivedTime"
] +
"</span></html>"
;
49.
50.
this
.TextAlignment = ContentAlignment.TopLeft;
51.
}
52.
}
53.
54.
protected
override
Type ThemeEffectiveType
55.
{
56.
get
57.
{
58.
return
typeof
(SimpleListViewVisualItem);
59.
}
60.
}
61.
}