Mini Kabibi Habibi

Current Path : C:/Users/Public/Documents/DXperience 13.1 Demos/Silverlight/Bin/ClientBin/
Upload File :
Current File : C:/Users/Public/Documents/DXperience 13.1 Demos/Silverlight/Bin/ClientBin/PivotGridDemo.xap

PKc�B_���$AppManifest.xaml
 y�L:�b�y�L:�b�y�L:�b�<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" EntryPointAssembly="PivotGridDemo" EntryPointType="PivotGridDemo.App" RuntimeVersion="5.0.61118.0">
  <Deployment.Parts>
    <AssemblyPart x:Name="PivotGridDemo" Source="PivotGridDemo.dll" />
    <AssemblyPart x:Name="System.Xml.XPath" Source="System.Xml.XPath.dll" />
    <AssemblyPart x:Name="System.Windows.Controls.Data.Input" Source="System.Windows.Controls.Data.Input.dll" />
  </Deployment.Parts>
  <Deployment.ExternalParts>
    <ExtensionPart Source="DevExpress.Charts.v13.1.Core.zip" />
    <ExtensionPart Source="DevExpress.Data.v13.1.zip" />
    <ExtensionPart Source="DevExpress.DemoData.v13.1.Core.zip" />
    <ExtensionPart Source="DevExpress.DemoData.v13.1.zip" />
    <ExtensionPart Source="DevExpress.PivotGrid.v13.1.Core.zip" />
    <ExtensionPart Source="DevExpress.Printing.v13.1.Core.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Charts.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Core.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.DemoBase.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Docking.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Gauges.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Grid.v13.1.Core.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Grid.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Layout.v13.1.Core.zip" />
    <ExtensionPart Source="DevExpress.Xpf.LayoutControl.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Mvvm.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.PivotGrid.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Printing.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.DeepBlue.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.DXStyle.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.LightGray.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.MetropolisDark.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.MetropolisLight.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2007Black.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2007Blue.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2007Silver.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2010Black.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2010Blue.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2010Silver.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Office2013.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.Seven.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.TouchlineDark.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Themes.VS2010.v13.1.zip" />
    <ExtensionPart Source="DevExpress.Xpo.v13.1.zip" />
    <ExtensionPart Source="System.ComponentModel.DataAnnotations.zip" />
    <ExtensionPart Source="System.Data.Services.Client.zip" />
    <ExtensionPart Source="System.ServiceModel.DomainServices.Client.zip" />
    <ExtensionPart Source="System.ServiceModel.DomainServices.Client.Web.zip" />
    <ExtensionPart Source="System.ServiceModel.Extensions.zip" />
    <ExtensionPart Source="System.ServiceModel.Web.Extensions.zip" />
    <ExtensionPart Source="System.Windows.Controls.DomainServices.zip" />
    <ExtensionPart Source="System.Windows.Data.zip" />
    <ExtensionPart Source="System.Xml.Linq.zip" />
    <ExtensionPart Source="System.Xml.Serialization.zip" />
    <ExtensionPart Source="DevExpress.Xpf.Ribbon.v13.1.zip" />
    <ExtensionPart Source="System.Windows.Controls.zip" />
  </Deployment.ExternalParts>
</Deployment>PKc�B�%����$PivotGridDemo.dll
 y�L:�b�y�L:�b�y�L:�b�MZ����@���	�!�L�!This program cannot be run in DOS mode.

$PEL	E�Q�!vN� � �@��W�0���  H.textTt v `.rsrc0�x@@.reloc�~@B0�H��(���0V�(

rp�t(
�ts
(
�r)p�t(
�ts
(
�*F~(
�t*J~�t(
*F~(
�t*J~�t(
*{
*"}
*{*"}*{*"}*{
*"}
*{*"}*{*"}*0�(
rKp(
u((�s
o
rgp(
u(	r}p(
u(r�p(
u(
r�p(
u(r�p(
u((�s
o
(*0^(((((({	(o 
{	o!
-r�p((*( *0A((,(*((o"
{	(o 
(!*0@(,*(o#
2&(o$
(o#
o%
u~(&
**�(o#
2&(o$
(o#
o%
u~(&
**^o$
o'
~(
o)
*0�(o*
,o*
o+
(*o,
u
-*o-
+o.
o$
o/
&o0
-��
,o1
�o$
o2
1o$
o%
o3
*8 X
z(-*(((*z(-*(((*0�(,*�~
(�r�p�(o$
(o#
o%
t~�rp�(o$
(o#
o%
t~�(�(4
*0hr7p
(o5
(6
-r9p(o5
rKp(7

+*(o5
(6
-rOp(o5
rKp(7

*�rcp(
o5
rKp((7
*05r}ps8

o9
o:
#4@s;
o<
o=
**b{	�s>
o?
*�{	(o$
(o#
o%
t~�s>
o@
*JsA
}	(B
*08�(

r�p�(
�$sC
sD
(E
�*�(F
-*t(F
sG
}*o,*0 
(H
-
�3s

(I
*0:(J
(*{-*{oK
u
(L
,
,oM
*F~(
t*6~(
*6(
(**0i(',*(N
�(
(O
(P
oQ
(N
oR
u-*(N
oR
t�+sS
(T
u((**u�*�(',+('oU
����(V
,('oW
*Z�(
(O
(P
*
*
*"((*"(2*0�sX

sY
r�poZ
s[
o\
o]
o^
(_
o`
oa
(b
#D@Y(_
o`
oa
(c
#D@Ysd
se

	sf
og
	oh
	oi
	r�poj
	ok
	(l
&*6(m
(5*�{,*}rpso
(p
*^(B
�(
(q
*F~(
��*J~��(
*F~(
��*J~��(
*2to=*�(
r�p(
u}(=*�{,"{(7or
{(9os
*0�r�pП(
�(
#���;st
su
(
�r�pП(
�(
#���;st
su
(
�*0R(v
,Gow
r�p(x
,5ow
rp(x
,#ow
rp(x
,ow
r6p(x
**(y
*�rFp�t(
�(
�Dst
sz
({
�*�,u-rXps|
zt~o
�t*�,u-rXps|
z~�to
*0u
-*�Es}
o~
*0>	o

,o�
,*o�
3o�
.o�
*o�
3o�
*(�
*0��(

rhp�t(
�t�Hst
su
(
�r�p�t(
�ts
(
�r�p�t(
�ts
(
�*2toP*v(%(R{(�
o�
*F~(
�t*J~�t(
*F~(
�t*J~�t(
*F~(
�t*J~�t(
*0^(J,5{(�
r�po�
tRo�
{#i@o�
*{o�
{#Y@o�
*0S
{o�

E	*(K*(K(M(O*(K(M(O*0�{ ,*} r�pso
(p
rhp(�
t!}r�p(�
t}r�p(�
t}r�p(�
t}r�p(�
t}r�p(�
t}*2(�
��*s�
z
*(�
*6(%(d*�{"(i{+(�
o�
(Y(Z*0={,o�
~!o�
{/o�
�
 ����o�
*09{+�
r�p�o�
{+�rp�o�
*0V{"o#
/*{0{"o�
t,o�
t{#o�
(jo�
{+(bo�
*0\{0o�
o�
{#o�
��t(V
o�
{0{#o�
��t(V
s�
o�
*j{+{$o�
�o�
*~{0o�
u�,(_(a*0�
s�

{0o�
o�
o�

+d
o�
t$(`o�
o�
s�
o�
o�
o�
o�
#(@o�
o�
o�
o�

o0
-��
,
o1
�
o�
+$(�
	(�
/(�

(�
(�
-���o1
�-*s�
o�
o�
+o�
o�
o�
o0
-��,o1
�o�
{0o�
u�9�{0o�
o�
o�

+d
o�
t$o�
o�
+/o�
		o�
o�
-o�
	o�
o�
o0
-��,o1
�
o0
-��
,
o1
�*@q��1�$$�<�dq�06
+ o�
o�
o�
(�
-X
Xo�
o�
2�*0{+o�
o�
o�
-l{+{+o�

(�
{+o�
(�
o�

o�
3
{+o�
,o�
3{+o�
�++8�{+o�
o�
o�
+Vo�
{+(�
(�
o�

o�
3
{+o�
,o�
3{+o�
-++	o0
-��,o1
�{)(�
*�c�Z{0o�
u�,**�(b,"o�
3o�
~�
3��o�
*0l{1,*}1rpso
(p
r�p(�
t}"r�p(�
t&}#r�p(�
t!}$r�p(�
t&}%r p(�
t&}&rZp(�
t&}'r�p(�
t'}(r�p(�
t(})r�p(�
t)}*r�p(�
t}+r�p(�
t},r�p(�
t}-rp(�
t}.r>p(�
t}/r\p(�
t*}0*0r�~
r�p�rvp�rp�r�p�r�p�r�p�r�p�r�p�r�p�	r�p�
r�p�r�p��!*^~5-
(g�5~5*0�s�

��(
ss~2oprporo�
��(
ss~2oprHporo�
��(
ss
	~2op	rfpor	o�
��(
ss~2opr�poro�
��(
ss~2opr�poro�
��(
ss~2opr�poro�
��(
ss~2opr	poro�
��(
ss~3opr4	poro�
*0#o�
u~
,o�
u~o�
**0�s�

(fo�
o�
+S(�

(f	o�
,oo(+2+s�
oqo9
	o�
o�
	~43(�
-���o1
��hs�
o�
o$
o�
o�
o3
*`y0(l
(mu/,u/(krP	po�
r^	po�
rr	po�
o�
-s�
o�
(�
,	(�
+o�
u�,jo�
-s�
o�
o�
o�
s�
o�
o�
o�
o�
s�
o�
o�
o�
o�
o�
o�
o�
+-o�
-s�
o�
o�
o�
o�
o�
o�
*�-*s�
o�
o�
s�
o�
o�
o�
o�
*0E(�
t0
u�,-u��,#�������?o�
+#o�
*n(fo�
oo(�
t-*��/(
�2Я(
�3��(
�4*{6*"}6*{7*"}7*(
*v(%(w{8(�
o�
*0�{8o
{<o�
�
 ����o�
{:o
o
/F{:o
{< ���s
o
{:o
{9��s
o
{8o
*>{8oW
*0�{?,*}?r�	pso
(p
r�p(�
t}8r
p(�
t}9r
p(�
t}:r�p(�
t};r�p(�
t}<r=
p(�
t}=rY
p(�
t}>*�(%({Io
{I(�
o�
{Io
*>{IoW
*Jo
o
o	
*0<o

����o
9 o
o
o�
@
o

s
o
s
ru
po

o

o
�3(
(
o
8�o
�3o
s

	r�
p�3o
(
o
	�3o
o
	s�o�o
o
o�o
	�|s
�~s
s
o
	o
&o0
:\����u�,o1
�*{�&�o�o�o 
o�o�o�(}o!
{IoW
*0Y{M3r7p*
E
+r�
p*r7p*r�
p*~(
*^o�o"
o���*0�{T,*}Tr�
pso
(p
rp(�
t4}@r!p(�
t5}ArWp(�
t5}Br�p(�
t5}Cr�p(�
t5}Dr�p(�
t5}Er�p(�
t5}Frp(�
t5}GrUp(�
t5}Hr�p(�
t}Ir�p(�
t}Jr�p(�
t}Kr�p(�
t}Lr=
p(�
t}MrY
p(�
t}Nr�p(�
t}Or�p(�
t6}Pr�p(�
t6}Qr�p(�
t6}Rr�p(�
t6}S*(
*{U*"}U*{V*"}V*0�(%(�{W(�
o�
{Wo
{Zo�
o#
{Zo�
r�po$
{Zo�
r
po$
{Zo�
r7
po$
{]o�
rG
po$
{]o�
r_
po$
{Wo
{W��s
o%
��s
(I
*
*R{W{]o&
*�{W~'
{Ws(
o)
{W~'
{Ws(
o)
*0xo*
{Wo�

(�
�
o+
{Wo�
(�
�,,-5,2o�
0	o�
1`(�o,
(�o-
*0go.
o/
.*o0
,o/
{Wo�

(�
.#o0
-,o/
{Wo�
(�
3{Wo1
o2
*0U
E&+0{Wo3
*{Wo4
*{Wo5
*{Wo6
*r
ps7
z0U
E&+0{Wo8
*{Wo9
*{Wo:
*{Wo;
*r
ps7
z0�{a,*}ar�
pso
(p
r�p(�
t}Wr>p(�
t}Xrp(�
t}Yr)p(�
t}Zr�p(�
t}[rMp(�
t}\r
p(�
t}]rgp(�
t}^r�p(�
t}_r=
p(�
t}`*�(%(�{l(<
o�
(�*0Y
{lo
{ho�

E
+(�+(�+(�+(�{lo=
*(�*(�*0W(�{po>
{m{n%
o>
o>
{o{qo?
{oo@
{o
oA
*0J(�{m{n%
o>
o>
{p{qo?
{po@
{poA
*0(�{jo$
o2
:�{ko$
r�po/
&{moB

+	�
{jo$
o/
&	X
	�i2�{j{jo$
o%
o3
{noB
+�{ko$
o/
&X�i2�{k{ko$
o%
o3
{j{jo$
o%
o3
{ioC
(�(�*0�{i,{ioC
{n,-{no�
oD
{no�
o#
{no>
{m,9{mo�
oD
{mo�
o#
{mo>
{moE
{p,<{po@
{po?
{poA
{po>
{poE
{o,${oo?
{ooA
{oo@
*�{mo�
o#
{mo�
oD
{mo�
{jo�
o$
*0\{no�
oD
{no�
o#
{ko#
-*{no�
o#
{no�
{ko�
o$
*0�{r,*}rr�pso
(p
r!p(�
t!}hr9p(�
t:}irSp(�
t}jrcp(�
t}kr�p(�
t}lr�p(�
t}mryp(�
t}nr�p(�
t}or�p(�
t}pr�p(�
t}q*0�(%}s(�{u(�
o�
{to$
s�

r�po9
��o�
o/
&{to$
s�
r!po9
��o�
o/
&{toF
*{s*0�
{to�
t,o�
��}s{uo
(�
E�8�{uoG
oH
oI
{uoG
oH
rapoJ
{uoG
oH
oK
{uoG
oH
r}poJ
{uoG
oH
	oK
{uoG
oH
oI
{uoG
oH
oK
8�{uoG
oH
oI
{uoG
oH
r�poJ
{uoG
oH
oK
{uoG
oH
oE
{uoG
oH
r�poJ
{uoG
oH
oK
{uoG
oH
oE
{uoG
oH
oI
{uoG
oH
oK
{uo
{uoL
*0*(�
E�*oM
{uoG
oH
(N
-*oO
o
oP
(Q
F/r�poR
*oO
o
oP
(Q
E1&oO
o
oP
(Q
T/r�poR
*oO
o
oP
(Q
S1tr�poR
*oM
{uoG
oH
(N
-*oO
�P(S
��r�poO
�P(T
Y[X
(U
(V
oR
*0�{{,*}{r�pso
(p
rYp(�
t}tr�p(�
t}urip(�
t}vr�p(�
t}wr�p(�
t}xr�p(�
t}yr�p(�
t}z*6(%(�*F{}(�
o�
*0�{�,*}�r	pso
(p
rup(�
t)}|r�p(�
t}}r�p(�
t}~r�p(�
t}r�p(�
t}�ryp(�
t}�r=
p(�
t}�r�p(�
t}�*0$r�p(W

�(
oX
(Y
*0&
~�oZ
-(�
~�o[
*{�*"}�*(�
*:(�
(�*2(�(�*.s\
��*�(%(�{�(�
o�
(�(�(�*{�*"}�*(�*0�{�-*(�
{�#y@2#y@+#Y@Yo�{�#�@0#�@+$#Y@[(]
#�?X#Y@Zo�{�o�(�#4{�oC
{�oC
8�{�oC
{�oC
{�#�?2+lo�{�#�?2)#@0#@+(]
#�?X+	#�?o�{�o�(�{�#�?2+lo�{�#�?2)#@0#@+(]
#�?X+	#�?o�{�o�*0\ {�o^

o_
-
#*#+o`
r�poa
(b
XXo_
2�o_
l[*0�!{�o�
oc
(+3{�oe
.
#�*{�o�
oc

(+{��
	��	og
(b
{����og
(b
#3
#�?*[*0�"{�o�
oh
-r�psi
z{�oB

(+{����og
(b
#3r7psi
z#�������?�il(j
(k
Z*0Z#{�oe
.
#�?*{���og
(b

(�#3
#�?*(�[*�o>
oE
o�
oD
o�
o#
*0f{�-*{�o
{�(�{�(�{�(�{�(�{�(�{�o
*0�${�o�

Ex*(�{�ol
*{�o
(�{�o�
� ���� ����o�
{�o
{�om
{�on
*{�o
(�{�o�
�rIp�r]p�o�
{�o
{�oo
{�op
*0{�,*}�rspso
(p
r�p(�
t!}�r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�ryp(�
t}�r�p(�
t}�rp(�
t}�r;p(�
t>}�r_p(�
t}�*0��(

r�pП(
#��s
(
��r�pП(
#$@��s
(
��r�pП(
#@����st
su
(
��r�p�~(
~(
��st
su
(
��*2to�*^(B
�(
(q
*F~�(
��*J~���(
*F~�(
��*J~���(
*F~�(
��*J~���(
*F~�(
t~*6~�(
*�(
r�p(
u?}�(�*0P{�-*(�(&
,r�p+r�p(�r�p(q

{�(���(W
o9
*�(%(�{�(�
o�
{�(r
os
*n(&(L
-{�ot
*j{�{�ou
�oM
*0\%{�ou

{�{�o�
��ov
{�oM
{�ow
-r�p(x
&*r	p(x
&*^{�{�oy
oM
*0b&{�oz
o{
�B
{�oz
o|
+o}
�B`
o0
-��
,o1
�{�o~
(�*(D
�{�(
(�o�
o�
�o�
*�{�(�
o�
t��sS
(T
tA*6uA��*"(�*0�'{�o$
o�
{�o$
o'
{�oz
o|
+)o}
�B
{�o$
(��Co/
&o0
-��
,o1
�,C{�o$
{�o�
�Co�
-!{�o$
{�o�
�Co/
&{�o$
o�
*15f
04(
E	+*****r1ps�
z0/)
YE
.3
******0^{�,*}�rQpso
(p
r�p(�
tD}�r	p(�
tE}�r�p(�
tE}�r�p(�
t}�rp(�
t}�r=p(�
t:}�r]p(�
t}�ryp(�
t}�r�p(�
t}�r>p(�
t}�rp(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�rp(�
t}�r)p(�
t}�rMp(�
t}�r
p(�
t}�rp(�
t}�r-p(�
t}�rgp(�
t}�r=
p(�
t}�r�p(�
t}�rY
p(�
t}�r�p(�
t}�*0%�t
3rIp*rip*s�
z
*(�
*v(%(�{�(�
o�
*6(�(�*0�{�,{�o�
o�
-*{�o�
o�
{�o�
o�
{�o�
o�
rIpo�
&{�o�
o�
{�,{�o�
o�
-*{�o�
o�
{�o�
o�
{�o�
o�
 ���o�
o�
��o�
&{�o�
o�
 ���o�
o�
��o�
o�
	��o�
&{�o�
o�
 ���o�
o�
��o�
&{�o�
o�
 ���o�
o�
��o�
&{�o�
o�
*�{�o�
o#
{�o�
rIpo$
*0�{�,*}�r�pso
(p
r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�ryp(�
t}�r
p(�
t}�r�p(�
t}�r�p(�
tF}�rp(�
tF}�*v(%(�{�(�
o�
*b(�{�s�
o�
*0�*��(
(

o

+X	o
����o
r3po�
-5{�o$
s�
��o
o9
��o�
o/
&	o0
-��	u�,o1
�{�{�o$
o2
YoF
*d{0Wo
{�(N
,Co
o�
35r=po�
(W
o�
o�
3%o�
rMp(
o�
*0~{�o#
/*{�o�
oD
{�{�o�
t,o�
��oK
{�r[p{�o�
��o
r3pr7po�
(W
oJ
*0�{�,*}�r}pso
(p
r�p(�
t}�rp(�
t&}�r�p(�
t}�r/p(�
t}�r�p(�
t}�r�p(�
t}�rap(�
t}�*v(%(�{�(�
o�
*0x+{�o
{�o�
o�
+7o�

o�

+	o�
{�o�
	o0
-��
	,	o1
�o0
-��
,o1
��{�o
�*(,K
C_
`k:}�(�*:}�(�*0V{�,*}�rpso
(p
r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�ryp(�
t}�r
p(�
t}�r�p(�
t}�r=
p(�
t}�rY
p(�
t}�r�p(�
tF}�rp(�
tF}�rp(�
tF}�*0H(%(�{�(�
o�
{�o�
o#
{�o�
 ���o$
*0�{�,*}�r7pso
(p
r�p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�ryp(�
t}�r=
p(�
t}�r�p(�
t}�r�p(�
tF}�rp(�
tF}�*r�p*2{�o�
*Z{�o�
rpo�
**�#i@}� �}�(%(�*6(�(�*0l,u
,'oa
(c
#i@2{�o�
.*oa
(c
#�V@Y#�?Z(�
o�
o�
}�*0:-{�oG
o�
,(�-*{�o
{�oG
rDpo�

{�oG
r�po�
{�oG
r�po�
{�oG
rpo�

{�oG
r8po�
,
,
,	,-{�o=
*o>
o>
o@
#�[@o�
rppo!
	#�V@o�
	rppo!
#�W@o�
oI
oI
oI
	oI
oI
{�o=
*�{�oG
o�
-{���s�
o�
*0s(6
,
{�o�
*(�(�
,*{�o
{�oG
o�
{�o�
o�
{�o�
{���s�
o�
*0�.{�,
{�o�
,*{�oC
s"}�{�rvp(�
t
o�
se

oh
oi
r�poj
��s�
ok
{�#��@{�lsd
(l
&*0H/{�-*{�o
}�(�
,(�
�+,*(6
,*(�*0>0o�
,o�
o+
(�+o�
tK(��
o+
(��*..�0&1��s�

{�o+
o*
o�
*0�2o_
-r�p(�*s�

s�
o�
o�
o�
o�
��s�
o�
o�
o�
#@�@#�r@sd
se
oh
oi
rpo_
��(W
oj
ok
(l
&*0`3se

oh
sf
og
rFpoj
s�
o�
o�
o�
#@z@#�b@sd
(l
&*0=4t
+#o�
o�
o�
(�o�
Xo�
o�
2�*0j5
+Q{�oG
oH
(�(&
,o�
+o�
(�
,o�
(&
,*o�
*X
{�oG
o�
2�*(
*J{�{�(�*0>6s�
}�}�{�o�
{�o�
��s�
o�
&*0�7{�o�
o+
rRpo�
o�
-~(
+o�
o�
o+
(q
o�
rZp(x
&s�


s�
o�
��s�
o�
o�
o�
*017u
-*o�
��s�
o�
r|p(x
&*0�{�,*}�r�pso
(p
rp(�
tD}�rZp(�
tE}�r|p(�
tE}�r4p(�
tN}�rLp(�
t>}�r`p(�
t}�r�p(�
tO}�r�p(�
t}�*0_(%({��(
(�
o�
{�oF
{��(
(�
o�
{�oF
(�*J{�(�o�
*r�p*r{�to�
�o�
*r{to�
�o�
*(
*J{�{�(*0>8s�
}�}�{�o�
{�o�
��s�
o�
&*0�7{�o�
o+
rRpo�
o�
-~(
+o�
o�
o+
(q
o�
rZp(x
&s�


s�
o�
�s�
o�
o�
o�
*017u
-*o�
�s�
o�
r|p(x
&*0l{,*}r�pso
(p
rp(�
tD}�rZp(�
tE}�r|p(�
tE}�r p(�
t}�r" p(�
t}�r4p(�
tN}�rLp(�
t>}�r�p(�
t}�rB p(�
t}�rb p(�
t}�r� p(�
t}�r� p(�
t}�r� p(�
t}�r� p(�
t}�r!p(�
t}*v(%(
{(�
o�
*0b
{o
{oC
{o�
oD
{o�
o#
{o>
{o>
{
o>
{o>
{	o>
{o�

E�^�8�{oE
{oC
{o$
o2
-'{o$
{oB
o�
{oF
(	+b{o>
{o>
{
o>
{o>
+0{o>
{	o>
{
o>
{o>
{o
*(	*�{o�
o#
{o�
oD
{o�
{o�
o$
*0�{,*}r!pso
(p
r!p(�
t!}r�!p(�
t:}r�!p(�
t}r�p(�
t}r�!p(�
t}r�p(�
t}r�p(�
t}r=
p(�
t}	rY
p(�
t}
r�p(�
t}*0c(%({(�
o�
{
 �6s�
�Po)
{ �s�
�Po)
*�{
�
s
o
{�
s
o
*(*0w9{
o�
(
{o�
((&
-+(&
-#{r�!p(q
�(�
o�
*{(
�(�
o�
*0A(�
j3r7p*r�!p{o�
-r�!p+r"p(�
(�
(�
*0�{,*}r"pso
(p
rn"p(�
tQ}
r�"p(�
tQ}r�p(�
t}r=
p(�
t}rap(�
t}r�p(�
t}*v(%({(�
o�
*j{o�
{(1*0�{,*}r�"pso
(p
r�p(�
t}r�p(�
t}r�p(�
t}r�p(�
t}ryp(�
t}r=
p(�
t}r�p(�
t}*�(%({+(�
o�
((*0V{+o�
}%{+o�
}&{+o�
}'{+o�
}({+o�
})*6{+(1*03:oO
�P
(S
(T
(�
(�#oR
*N(�
(�
(�
Y*0J

E
+********r#pr>#ps�
z0t;#H�z��=@
#������>@#�v@
/YXXlZlZXlX#�z...%AY[(	lZ(�
i	.+(*0{,o>
{-o>
{-oI
{-o�
oD
{.o>
{.oI
{.oE
{.o�
oD
{/o>
{/oI
{/oE
{/o�
oD
{0o>
{0oI
{0o�
oD
{%-*{+{%o�
{+{&o�
{+{'o�
{+o�
{+o�
*0�({*o�
3${.oI
{/oI
{-oI
{*o�
3U{+{(o�
{+{)o�
{+o�
{+o�
{+rJ#p(�
tRo�
*0�{1,*}1rh#pso
(p
rhp(�
t!}*r�p(�
t}+r�p(�
t},r�#p(�
t}-r�p(�
t}.ryp(�
t}/r�p(�
t}0*0)<u"
-	(�
*o�
-(*(!*{2*"}2*{3*"}3*(�
*0)=u$
-	(�
*o�
-(%*('*{4*"}4*{5*"}5*(�
*^r�#p(W
so
s�
*s�
z0&
~6oZ
-(*
~6o[
*0*>u%
,
o�
u#-*o�
o
(,*s�
z.s\
�6*(
*v(%(6{>(�
o�
*0�?{?-*{?o>
{@o>
{Eo>
{Do>
{BoI
{CoI
{@o?
{@o@
{@oA
{Fo>
{FoI
{Eo>
{?o�
{?o�
o�
{:oC
{;oC
{7o�

E?�2�*{?o>
{@o>
*{?o>
{@o>
{:oC
*{FoI
{?o>
{@o>
{Eo>
{@oE
{;oC
{=(4*{?o�
{?o>
{@o>
{?o�
o
&{?o�
o
&{?o�
o
&{?o�
o
&{FoI
{Eo>
{Do>
{@oE
*{Eo
{?o>
{Bo
{Co
{B{C%oI
oI
{?oE
*{@o>
{?o>
{@{Ao?
{@o@
{@oA
{@oE
*01@{?{:o�

(
-+o>
{?oE
*0�
{F-*to#

E&Kp*{Eo>
{Fo>
{Do>
*{Do>
{Fo>
{Eo>
*{Do>
{Eo>
{Fo>
*{Do>
{Eo>
{Fo>
*0�A{9o�
(
-*s�

(
(
o�
o�
o
s�
o�
o�
o�
o�
o�
#@�@#�r@sd
se

	sf
og
	oh
	oi
	rZ$poj
	ok
	(l
&*0�{G,*}Grz$pso
(p
r!p(�
t!}7r�$p(�
t:}8r%p(�
t&}9r%p(�
t&}:r@%p(�
t(};rb%p(�
t>}<r�%p(�
t}=r�p(�
t}>r�p(�
t}?r�p(�
t}@r�p(�
t}Ar�%p(�
t}Br�%p(�
t}Cr�p(�
t}Dryp(�
t}Er
p(�
t}F*6(%(8*0N{J,*}Jr�%pso
(p
rV&p(�
t!}Hr�p(�
t}I*J(
s
(?*{K*"}K*{L*"}L*{M*"}M*(:*F(>o
�'*F(>o
�'*�s
�Orn&p�(
�+(
�Fst
sz
({
�N*�,u-rXps|
zt~No
�t�t*�,u-rXps|
z~No
*0�Bu
~Oo	
(

u*s
�P�Q�Gs
o

~Oo
o<o
o
oG
o�
oG
o
o
o�
o
o
*0XCo
,-r�&p(
o
o+
(q
r�&p(
&o
*uX
~P,~Q3~Po�
*(
*v(%(P{U(<
o�
*0B{To�
t-oR(O{UoW
{U{Uo
Yo
*f(N}R{So�
*6{R(O*0�Ds

r�&p(NsVo
�,(
oX
r'pr$'p(
rh'p(
sTo
r�'pr$'p(
r�'p(
sTo
{To�
{ToF
*0Es

{Uo
*f-*jo
{Uo 
*0�{\,*}\r�'pso
(p
r (p(�
t}SrH(p(�
t}Tr�p(�
t}Ur�p(�
t}Vryp(�
t}Wr
p(�
t}Xr�p(�
t}Yr�p(�
t}Zr�p(�
t}[*:(
}]*{]*>(Q}^*F(!
{^o"
*>(Q}_*{_*0�(%(^{jo
{jo#
{j(�
o�
{no�
o#
{no�
 ���o$
{no�
 ���o$
{lo�
o#
{lo�
rIpo$
{lo�
r]po$
{jo
(Z*>{joW
*0�F�3(
(

o

+#	o
�3{ao$
�3o/
&	o0
-��	u�,o1
�{joG
o$
+0o�
o�
3o%
,{`o$
o�
o/
&o0
-��,o1
�{`oF
*/Fl=�0rG{joG
o$
+Jo�

o�
{`o�
o
(�
,&{a{ao$
o"
�3o&
oF
o0
-��
,o1
�*Vg
0bG{joG
o$
+:o�

o�
{`o�
o
(�
,{ao�
�3o 
o0
-��
,o1
�*FW
Jo
o
o	
*0�{r,*}rrt(pso
(p
r�(p(�
t}`r�(p(�
t}ar
)p(�
t&}brD)p(�
t&}crt)p(�
t&}dr�)p(�
t&}er�)p(�
t&}fr�)p(�
t&}gr*p(�
t&}hrZ*p(�
t&}ir�p(�
t}jr�p(�
t}kr�p(�
t}lryp(�
t}mr�p(�
t}nr=
p(�
t}orY
p(�
t}pr�p(�
t}q*v(%(d{t(�
o�
*0B{to
{xo�
o#
{xo�
 ���o$
{to
*V{toW
(b*0�H{toG
o$
8�o�

o�
3p{so$
s�
o�
o
o9
o�
o/
&{vo'
(N
,-{s{so$
{so$
o2
Yo%
o3
o0
:u����
,o1
�{soF
*��
�{so#
/*{v{so�
t,o�
to?
*0�{{,*}{r�*pso
(p
r�(p(�
t}sr�p(�
t}tryp(�
t}ur
p(�
t}vr�p(�
t}wr�p(�
t}xr=
p(�
t}yrY
p(�
t}z**�(%(o(g{o#
{(�
o�
*0iI�\(
(

o
+(o
�\{~o$
�\o
o/
&o0
-��u�
	,	o1
�{~oF
*4K6{o#
*6{o#
*6{�o(
*6{�o(
*0O{~o�
o

{��\(
()
�\o*
{�{�o+
(noJ
*0[o,
u!-*o-
{�o
,9o,
�!s.
(/
,(0
s1
o-
*(2
s1
o-
*0\J
E
+r+p*r+p*r$+p*r:+p*rR+p*0�{�,*}�rZ+pso
(p
r�+p(�
t&}|r,p(�
t&}}rH,p(�
t}~r�p(�
t}r�p(�
t}�rr,p(�
t}�r
p(�
t}�r=
p(�
t}�r�,p(�
t}�**0@(%(z{�(�
o�
(s{�{�o$
o2
YoF
*:{�o�
*0WG{�oG
o$
+/o�

o�
,	o�
3{�o$
o�
o/
&o0
-��
,o1
�*;L
(x*(x*6(x(y*R(x{�o�
*0�K{�-*{�o
{�oG
o$
+vo�

o�
{�o�
o
(�
,KoI
o@
{�o?
{�o3
(4
oA
{�o�
(
o5
+oA
o0
-��
,o1
�{�o
*%��
0�G{�-*{�o
{�oG
o$
+<o�

o�
{�o�
o
(�
-o�
.o�
-oI
o0
-��
,o1
�{�o
*%Hm
0�{�,*}�r�,pso
(p
r
-p(�
t'}�r�(p(�
t}�r,-p(�
t&}�r�p(�
t}�rgp(�
t}�r�p(�
t}�r)p(�
t}�r
p(�
t}�r�p(�
t}�**�(%(~(}{�(�
o�
*0�L�:(
(

o

+#	o
�:{�o$
�:o/
&	o0
-��	u�,o1
�Џ(
(

o
+$o
��{�o$
��o/
&o0
-��u�,o1
�*/Fr1�0�{�,*}�r\-pso
(p
r�-p(�
t}�r�-p(�
t}�r�p(�
t}�r�p(�
t}�r�p(�
t}�ryp(�
t}�r
p(�
t}�r=
p(�
t}�*�(%(�{�(�
o�
{�oF
*�{�o�
(�(�{�(�o�o6
*{�*"}�*0kMr".ps�
{�oG
o$
+7o�
o7
o�o�
o�o�
o�o8
o�o0
-��
,o1
�*C_
0i	{�o5
s9

(�
r4.po�
tRo:
r^.p{�o5
(
o;
oI
o<
{�o5
o=
*0H	(�
{�oG
o>
{�o?
{�o@
o6
{�oG
oA
&*0W	(�
oI
{�oG
o>
(�o7
o�{�(�o�o6
{�~(
o6
*~{�oB
u~(&
�o�
*�o
,0o
o%
-#{�oC
,{�o
o@
o6
*06>u,-uoD
u%
,oE
,{�oE
o?
*0R>ua,Iuao�
u%
,5oE
,-(�oE
o7
o�{�oG
oE
oA
&*0l{�,*}�rl.pso
(p
r�.p(�
t}�r/p(�
t}�r/p(�
t}�r0/p(�
t`}�r�p(�
t}�rp(�
t}�r-p(�
t}�r
p(�
t}�ryp(�
t}�r�p(�
t}�r=
p(�
t}�rJ/p(�
t}�rj/p(�
t}�r�/p(�
t}�r�/p(�
ta}�*07>t%
oE
,!oE
o�
3oE
o�
��+�t*s�
z(
*f(
}�s�
(�*{�*"}�*0(N
{���(F
X
(�o�
-�*6(�o�
*(
*6{�(�
*0&Os�
}�(���sG
oH
&*:(I
(+&*V�<(
oX
(K
*
*
*:(�(L
*0�P(M
oN
oO
t"
oP
oQ
oP
r�/poR
oP
r�/poS
oP
���oT
oP
oU
oP
oV
oP
r�/poW
(M
oX
*(Y
*L�����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetTPADPADP��K�����!S�σY��
����s<�4{$�8߀�\n�x�������ʔk���?�g��
u-��ŏ�Fd���4+�Ү2�s�Im��&2u����%�b͡]�Х�;�/�ҝ=\�@׶�.ْ�ڴ��]�[�Թ�(90�g����^}��/�n%����j�y�8jz�dN������/0*
�
?t����A��a�CX�"�w%$��-WD�.�0�4eb�5hTu<w�$?�ʎC
;iDO%E> 5Nv^P,��V`��\J^le�f,�*k�b'n�.toՄgr<��r���tQڡu)��x��yǽ|�uj:�
�?��=�
w��C�
�����	OQ
�
g[�	�B�|�.��WR�	[c
�,cB��FZ���ouz������_���(�
��?� 
.�M	�R�^controls/controlstyles/datasourcedialog.sl.xamlbcontrols/controlstyles/inplaceprogressbar.sl.xaml�pcontrols/controlstyles/internetconnectioncontrol.sl.xaml�8controls/datasourcedialog.cs>controls/datasourcedialog.sl.cs*&:controls/demomodulecontrol.cs�1Tcontrols/internetconnectioncontrol.xaml.csRC@controls/progressbarcontainer.cszD.demotesting/fixtures.cs�K4helpers/fieldareahelper.cs�NBimages/headericons/calculator.png�V6images/headericons/name.pngHY8images/headericons/order.png�[:images/headericons/person.png�^8images/headericons/price.png�aJimages/moonphase/firstquartermoon.png�d:images/moonphase/fullmoon.png�jHimages/moonphase/lastquartermoon.png�q8images/moonphase/newmoon.png�wNimages/moonphase/waningcrescentmoon.png8yLimages/moonphase/waninggibbousmoon.png=}Nimages/moonphase/waxingcrescentmoon.png�Limages/moonphase/waxinggibbousmoon.png��,images/warningicon.png4�:modules/celltemplates.sl.xaml\�:modules/celltemplates.xaml.cs�Fmodules/chartgeneraloptions.sl.xaml��Fmodules/chartgeneraloptions.xaml.cs��Pmodules/conditionalsortbysummary.sl.xaml<Pmodules/conditionalsortbysummary.xaml.cs�6modules/contextmenu.sl.xaml�6modules/contextmenu.xaml.cs�7@modules/customappearance.sl.xaml�D@modules/customappearance.xaml.cs�X>modules/customerreports.sl.xamli>modules/customerreports.xaml.csbyFmodules/customgroupinterval.sl.xaml��Fmodules/customgroupinterval.xaml.csv�8modules/customlayout.sl.xaml��8modules/customlayout.xaml.cs�2modules/dashboard.sl.xaml��2modules/dashboard.xaml.cs0�Fmodules/fieldscustomization.sl.xaml�Fmodules/fieldscustomization.xaml.cs�>6modules/filterpopup.sl.xamlW6modules/filterpopup.xaml.csnf:modules/groupinterval.sl.xaml�l:modules/groupinterval.xaml.cs�z,modules/groups.sl.xamlK�,modules/groups.xaml.cs�<modules/multipletotals.sl.xaml��<modules/multipletotals.xaml.cs�6modules/olapbrowser.sl.xamlY�6modules/olapbrowser.xaml.cse�.modules/olapkpi.sl.xaml��.modules/olapkpi.xaml.cs��8modules/orderreports.sl.xamlm8modules/orderreports.xaml.cs�2modules/prefilter.sl.xaml�2modules/prefilter.xaml.csG)8modules/printoptions.sl.xaml�/8modules/printoptions.xaml.cs@D<modules/printtemplates.sl.xamlBF<modules/printtemplates.xaml.cs�a<modules/productreports.sl.xaml�<modules/productreports.xaml.cs��6modules/riaservices.sl.xaml�6modules/riaservices.xaml.cs	�:modules/serialization.sl.xamlg�:modules/serialization.xaml.cs`�6modules/singletotal.sl.xaml�6modules/singletotal.xaml.cs�:modules/sortbysummary.sl.xamlv:modules/sortbysummary.xaml.cs�$Dmodules/summarydisplaymode.sl.xaml�*Dmodules/summarydisplaymode.xaml.cs�62modules/topvalues.sl.xamldE2modules/topvalues.xaml.cs\Q<modules/totalslocation.sl.xaml2\<modules/totalslocation.xaml.cs*iDmodules/unboundexpressions.sl.xaml�lDmodules/unboundexpressions.xaml.csO�program.cs��4properties/assemblyinfo.cs$�!�<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid">

    <dx:BooleanToVisibilityConverter x:Key="booleanToVisibilityConverter" />

    <Style TargetType="local:DataSourceDialog" x:Key="DataSourceDialogStyle">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate>
                     <Grid Margin="14,10,4,4">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto" />
                            <RowDefinition Height="28" />
                            <RowDefinition Height="28" />
                            <RowDefinition Height="28" />

                            <RowDefinition Height="28" />
                            <RowDefinition Height="28" />

                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>

                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="62" />
                            <ColumnDefinition Width="*" />
                            <ColumnDefinition Width="20" />
                        </Grid.ColumnDefinitions>



                        <TextBlock Text="Server" Margin="0,7,0,0" Grid.Row="1" />

                        <TextBlock Text="Database" Grid.Row="2" Margin="0,6,0,0" />
                        <TextBlock Text="Cube" Grid.Row="3" Margin="0,6,0,0" />


                        <TextBlock Text="Username" Grid.Row="4" Margin="0,6,0,0" />
                        <TextBlock Text="Password" Grid.Row="5" Margin="0,6,0,0" />



                        <Grid Margin="0,4,0,4" Grid.Column="1" Grid.Row="1">
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*" />
                                <ColumnDefinition Width="80" />
                            </Grid.ColumnDefinitions>


                            <dxe:TextEdit x:Name="ConnectionString" Text="http://demos.devexpress.com/Services/OLAP/msmdpump.dll" />

                            <Button Name="Connect" Content="Connect" Grid.Column="1" Margin="4,0,0,0" Grid.Row="1" />
                        </Grid>
                        <dxe:ComboBoxEdit x:Name="CatalogsCombo" Grid.Column="1" Grid.Row="2" Margin="0,4,0,4" IsTextEditable="False" />
                        <dxe:ComboBoxEdit x:Name="CubesCombo" Grid.Column="1" Grid.Row="3" Margin="0,4,0,4" IsTextEditable="False" />

                        <dx:ColumnWaitIndicator Grid.Column="2" Grid.Row="2" Width="16" Height="16" Margin="4,0,0,0" Padding="0" Visibility="{Binding IsCatalogsRetriving, Converter={StaticResource booleanToVisibilityConverter}, RelativeSource={RelativeSource TemplatedParent}}" />
                        <dx:ColumnWaitIndicator Grid.Column="2" Grid.Row="3" Width="16" Height="16" Margin="4,0,0,0" Padding="0" Visibility="{Binding IsCubesRetriving, Converter={StaticResource booleanToVisibilityConverter}, RelativeSource={RelativeSource TemplatedParent}}" />



                        <dxe:TextEdit x:Name="UserCombo" Grid.Row="4" Grid.Column="1" Margin="0,4,0,4" />
                        <dxe:PasswordBoxEdit x:Name="PasswordCombo" Grid.Row="5" Grid.Column="1" Margin="0,4,0,4" />


                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>!�<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid">
 <ControlTemplate x:Key="InplaceProgressBarTemplate" TargetType="ProgressBar">
  <Grid>


   <Border x:Name="ProgressBarTrack">
       <Rectangle x:Name="ProgressBarIndicator" Fill="#FFBA4F8C" HorizontalAlignment="Left" Opacity="0.5" />
            </Border>

        </Grid>
 </ControlTemplate>

    <Style TargetType="local:ProgressBarContainer">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="local:ProgressBarContainer">
                    <ProgressBar Template="{StaticResource InplaceProgressBarTemplate}" Name="PART_ProgressBar" Minimum="0" />
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

</ResourceDictionary>!e<UserControl x:Class="PivotGridDemo.PivotGrid.InternetConnectionControl" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008">
    <Grid Margin="0,0,0,8" HorizontalAlignment="Stretch">

        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Image Source="/PivotGridDemo;component/Images/WarningIcon.png" Stretch="None" />
        <TextBlock Margin="4,0,0,0" Grid.Column="1" TextWrapping="Wrap" VerticalAlignment="Center">This demo requires Internet connection.</TextBlock>
    </Grid>

</UserControl>!using System;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using DevExpress.Xpf.Core.WPFCompatibility;
using DevExpress.Xpf.Editors;
using DevExpress.XtraPivotGrid;
using DevExpress.Xpf.Core;

namespace PivotGridDemo.PivotGrid {

    public partial class DataSourceDialog : Control {
        const string ConnectionStringName = "ConnectionString",
            CatalogsComboName = "CatalogsCombo",
            CubesComboName = "CubesCombo",
            UserName= "UserCombo",
            PasswordName = "PasswordCombo",
            ConnectButtonName = "Connect";

        public static readonly DependencyProperty IsCatalogsRetrivingProperty;
        public static readonly DependencyProperty IsCubesRetrivingProperty;
        XmlaMetaGetter metaGetter = new XmlaMetaGetter();

        static DataSourceDialog() {
            Type ownerType = typeof(DataSourceDialog);
            IsCatalogsRetrivingProperty = DependencyProperty.Register("IsCatalogsRetriving", typeof(bool), ownerType, new PropertyMetadata(false));
            IsCubesRetrivingProperty = DependencyProperty.Register("IsCubesRetriving", typeof(bool), ownerType, new PropertyMetadata(false));
        }

        public bool IsCatalogsRetriving {
            get { return (bool)GetValue(IsCatalogsRetrivingProperty); }
            set { SetValue(IsCatalogsRetrivingProperty, value); }
        }

        public bool IsCubesRetriving {
            get { return (bool)GetValue(IsCubesRetrivingProperty); }
            set { SetValue(IsCubesRetrivingProperty, value); }
        }

        ComboBoxEdit CatalogsCombo { get; set; }
        ComboBoxEdit CubesCombo { get; set; }
        TextEdit ConnectionString { get; set; }
        TextEdit User { get; set; }
        PasswordBoxEdit Password { get; set; }
        Button ConnectButton { get; set; }

        public override void OnApplyTemplate() {
            base.OnApplyTemplate();
            CatalogsCombo = GetTemplateChild(CatalogsComboName) as ComboBoxEdit;
            CatalogsCombo.EditValueChanged += OnCatalogsComboEditValueChanged;
            CubesCombo = GetTemplateChild(CubesComboName) as ComboBoxEdit;
            ConnectionString = GetTemplateChild(ConnectionStringName) as TextEdit;
            User = GetTemplateChild(UserName) as TextEdit;
            Password = GetTemplateChild(PasswordName) as PasswordBoxEdit;
            ConnectButton = GetTemplateChild(ConnectButtonName) as Button;
            ConnectButton.Click += Connect;
            ApplyPlatformTemplate();
        }

        void Connect(object sender, RoutedEventArgs e) {
            ClearCombo(CatalogsCombo);
            ClearCombo(CubesCombo);
            IsCatalogsRetriving = true;
            IsCubesRetriving = false;
            metaGetter.ConnectionString = GetConnectionStringCore();
            if(!metaGetter.Connected) {
                ShowMessage("Invalid cube.");
                IsCatalogsRetriving = false;
                return;
            }
            RetriveCatalogsAndCubes();
        }

        void OnCatalogsComboEditValueChanged(object sender, EditValueChangedEventArgs e) {
            IsCatalogsRetriving = false;
            if(IsCatalogEmpty()) {
                IsCubesRetriving = false;
                return;
            }
            IsCubesRetriving = true;
            CubesCombo.Clear();
            metaGetter.ConnectionString = GetConnectionStringCore();
            RetriveCubes();
        }

        bool CatalogOrCubeEmpty() {
            if(IsCatalogEmpty())
                return true;
            return CubesCombo.SelectedIndex < 0 || string.IsNullOrEmpty(CubesCombo.Items[CubesCombo.SelectedIndex] as string);
        }
        bool IsCatalogEmpty() {
            return CatalogsCombo.SelectedIndex < 0 || string.IsNullOrEmpty(CatalogsCombo.Items[CatalogsCombo.SelectedIndex] as string);
        }
        void ClearCombo(ComboBoxEdit edit) {
            edit.Items.Clear();
            edit.EditValue = string.Empty;
        }
    }
}!Uusing System;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using DevExpress.Xpf.Editors;
using DevExpress.XtraPivotGrid;
using DevExpress.Xpf.Core;

namespace PivotGridDemo.PivotGrid {

    public partial class DataSourceDialog {

        void InitComboBox(AsyncOperationResult result, ComboBoxEdit edit) {
            ClearCombo(edit);
            if(result.Exception != null) {
                ShowMessage(result.Exception.Message);
                return;
            }
            IList<string> resultList = result.Value as IList<string>;
            if(resultList == null) return;
            foreach(string value in resultList)
                edit.Items.Add(value);
            if(edit.Items.Count > 0)
                edit.SelectedItem = edit.Items[0];
        }

        void OnCatalogsRetrieved(AsyncOperationResult result) {
            if(!IsCatalogsRetriving)
                return;
            IsCatalogsRetriving = false;
            InitComboBox(result, CatalogsCombo);
        }

        void OnCubesRetrieved(AsyncOperationResult result) {
            if(!IsCubesRetriving)
                return;
            IsCubesRetriving = false;
            InitComboBox(result, CubesCombo);
        }
        public string GetConnectionString() {
            if(CatalogOrCubeEmpty())
                return null;
            return GetConnectionStringCore() +
                ";Initial Catalog=" + (string)CatalogsCombo.Items[CatalogsCombo.SelectedIndex] +
                ";Cube Name=" + (string)CubesCombo.Items[CubesCombo.SelectedIndex] + GetUserName();
        }

        string GetUserName() {
            string str = "";
            if(!string.IsNullOrWhiteSpace(User.Text))
                str = str + "User Id=" + User.Text + ";";
            else
                return str;
            if(!string.IsNullOrWhiteSpace(Password.Text))
                str = str + "Password=" + Password.Text + ";";
            return str;
        }

        string GetConnectionStringCore() {
            return "Data Source=" + ConnectionString.Text + ";" + GetUserName();
        }
        void ShowMessage(string message) {
            DevExpress.Xpf.Core.DXDialog dialog;
            dialog = new DevExpress.Xpf.Core.DXDialog("PivotGrid Demo Error", DevExpress.Xpf.Core.DialogButtons.Ok);
            dialog.Content = message;
            dialog.IsSizable = false;
            dialog.Padding = new Thickness(20);
            dialog.ShowDialog();
        }

        void ApplyPlatformTemplate() { }

        void RetriveCatalogsAndCubes() {
            metaGetter.GetCatalogsAsync(OnCatalogsRetrieved);
        }

        void RetriveCubes() {
            metaGetter.GetCubesAsync((string)CatalogsCombo.Items[CatalogsCombo.SelectedIndex], OnCubesRetrieved);
        }
    }
}!�using System;
using System.Windows;
using DevExpress.Xpf.Core.Native;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Utils.Themes;
using DevExpress.Xpf.Printing;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.Core.WPFCompatibility;
using DependencyPropertyChangedEventArgs = DevExpress.Xpf.Core.WPFCompatibility.SLDependencyPropertyChangedEventArgs;
using PropertyMetadata = DevExpress.Xpf.Core.WPFCompatibility.SLPropertyMetadata;

namespace PivotGridDemo.PivotGrid {
    public class PivotGridDemoModule : DemoModule {
        WeakReference Pivot = null;
        public static readonly DependencyProperty PivotGridControlProperty;

        static PivotGridDemoModule() {
            Type ownerType = typeof(PivotGridDemoModule);
            PivotGridControlProperty = DependencyPropertyManager.Register("PivotGridControl", typeof(PivotGridControl),
                ownerType, new PropertyMetadata(null, OnPivotGridControlChanged));
        }

        public static void OnPivotGridControlChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
            if(e.NewValue == null)
                return;
            ((PivotGridDemoModule)d).Pivot = new WeakReference(e.NewValue);
    }

        public PivotGridDemoModule() {
            Loaded += delegate(object sender, RoutedEventArgs e) {
                OnLoaded();
            };
        }

        protected override void RaiseIsPopupContentInvisibleChanged(System.Windows.DependencyPropertyChangedEventArgs e) {
            base.RaiseIsPopupContentInvisibleChanged(e);
            EnsurePivot();
            if(Pivot == null)
                return;
            PivotGridControl lastPivot = Pivot.Target as PivotGridControl;
            if(IsPopupContentInvisible && lastPivot != null)
                lastPivot.IsFieldListVisible = false;
        }

        public PivotGridControl PivotGridControl {
            get { return (PivotGridControl)GetValue(PivotGridControlProperty); }
            set { SetValue(PivotGridControlProperty, value); }
        }
        public override void OnApplyTemplate() {
            base.OnApplyTemplate();
            EnsurePivot();
        }

        void EnsurePivot() {
            if(PivotGridControl != null)
                return;
            DemoModuleControl.DemoContent = DemoModuleControl.FindDemoContent(typeof(PivotGridControl), (DependencyObject)Content);
            if(DemoModuleControl.DemoContent as FrameworkElement == null)
                return;
            PivotGridControl = LayoutHelper.FindElement(((FrameworkElement)DemoModuleControl.DemoContent), IsPivot) as PivotGridControl;
        }

        bool IsPivot(FrameworkElement element) {
            return element is PivotGridControl;
        }

        protected virtual void OnLoaded() {
            if(PivotGridControl != null && object.Equals(PivotGridControl.RowTotalsLocation, FieldRowTotalsLocation.Tree))
                PivotGridControl.BestFit(FieldArea.RowArea, true, false);
        }
        protected override object GetModuleDataContext() {
            return DemoModuleControl.FindDemoContent(typeof(PivotGridControl), (DependencyObject)Content);
        }
        protected virtual bool NeedChangeEditorsTheme { get { return false; } }
        protected override bool CanLeave() {
            return true;
        }
        protected override void Clear() {
            PivotGridControl = null;
        }

        public void ShowPrintPreview(PivotGridControl pivotGrid) {
            ShowPrintPreviewCore(pivotGrid);
        }
        public void ShowPrintPreviewCore(PivotGridControl pivot) {
            DocumentPreview preview = new DocumentPreview();
            PrintableControlLink link = new PrintableControlLink(pivot);
            link.ExportServiceUri = "../ExportService.svc";
            LinkPreviewModel model = new LinkPreviewModel(link);
            model.Link.CreateDocument(false);
            preview.Model = model;
            FloatingContainer.ShowDialogContent(preview, pivot, new Size(Application.Current.RootVisual.RenderSize.Width - 40, Application.Current.RootVisual.RenderSize.Height - 40),
             new FloatingContainerParameters() {
                 DialogButtons = DialogButtons.Ok,
                 AllowSizing = false,
                 CloseOnEscape = true,
                 Title = "Print Preview",
                 ClosedDelegate = null
             });
        }
    }

}!#using System.Windows.Controls;
using DevExpress.Xpf.Core.WPFCompatibility;

namespace PivotGridDemo.PivotGrid {

    public partial class InternetConnectionControl : UserControl {

        public InternetConnectionControl() {
            InitializeComponent();
        }

    }
}!Qusing System;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.Xpf.DemoBase;
using System.Windows;
using DevExpress.Xpf.Core;
using System.Windows.Controls;
using DevExpress.Xpf.Core.WPFCompatibility;

namespace PivotGridDemo.PivotGrid {
    public class ProgressBarContainer : Control {
        public ProgressBarContainer() {
            this.SetDefaultStyleKey(typeof(ProgressBarContainer));
        }

        public double Value {
            get { return (double)GetValue(ValueProperty); }
            set { SetValue(ValueProperty, value); }
        }
        public static readonly DependencyProperty ValueProperty = DependencyProperty.Register("Value", typeof(double), typeof(ProgressBarContainer), new PropertyMetadata(0d, new PropertyChangedCallback(OnProgressBarPropertyChanged)));

        public double Maximum {
            get { return (double)GetValue(MaximumProperty); }
            set { SetValue(MaximumProperty, value); }
        }
        public static readonly DependencyProperty MaximumProperty = DependencyProperty.Register("Maximum", typeof(double), typeof(ProgressBarContainer), new PropertyMetadata(0d, new PropertyChangedCallback(OnProgressBarPropertyChanged)));

        static void OnProgressBarPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
            ((ProgressBarContainer)d).UpdateProgressBar();
        }

        ProgressBar progressBar;
        public override void OnApplyTemplate() {
            base.OnApplyTemplate();
            progressBar = GetTemplateChild("PART_ProgressBar") as ProgressBar;
            UpdateProgressBar();
        }
        void UpdateProgressBar() {
            if(progressBar != null) {
                progressBar.Value = Value;
                progressBar.Maximum = Maximum;
            }
        }
    }
}!using System;
using System.Collections.Generic;
using System.Windows;
using DevExpress.Xpf.Core.Native;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.DemoBase.DemoTesting;
using DevExpress.Xpf.DemoBase.Helpers;
using DevExpress.Xpf.DemoBase.Helpers.TextColorizer;
using DevExpress.Xpf.Editors;
using System.Windows.Controls;
using DevExpress.Xpf.Editors.Helpers;


namespace PivotGridDemo.Tests {
    public class PivotGridCheckAllDemosFixture : CheckAllDemosFixture {

        protected override bool CanRunModule(Type moduleType) {
            return base.CanRunModule(moduleType) && moduleType.Name != "AsyncMode"
                && moduleType.Name != "OLAPBrowser" && moduleType.Name != "RIAServices" && moduleType.Name != "OLAPKPI"
            ;
        }

    }
}!�using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using DevExpress.Xpf.PivotGrid;
using System.Collections;

namespace PivotGridDemo.PivotGrid {
    public class FieldAreaHelper : DependencyObject {
        public static readonly DependencyProperty FixAreasProperty;

        static FieldAreaHelper() {
            FixAreasProperty = DependencyProperty.RegisterAttached("FixAreas", typeof(bool), typeof(FieldAreaHelper), new PropertyMetadata(OnFixAreasPropertyChanged));
        }

        public static bool GetFixAreas(DependencyObject element) {
            if(element == null || element as PivotGridControl == null)
                throw new ArgumentNullException("element");
            return (bool)((PivotGridControl)element).GetValue(FixAreasProperty);
        }

        public static void SetFixAreas(DependencyObject element, bool value) {
            if(element == null || element as PivotGridControl == null)
                throw new ArgumentNullException("element");
            element.SetValue(FixAreasProperty, value);
        }

        static void OnFixAreasPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
            PivotGridControl pivot = d as PivotGridControl;
            if(pivot == null) return;
            pivot.FieldAreaChanging += new PivotFieldAreaChangingEventHandler(OnPivotFieldAreaChanging);
        }

        static void OnPivotFieldAreaChanging(object sender, PivotFieldAreaChangingEventArgs e) {
            PivotGridField field = e.Field;
            if(field == null ||
                      field.UnboundType != FieldUnboundColumnType.Bound)
                return;
            if(field.Area == FieldArea.DataArea) {
                if(e.NewArea != FieldArea.DataArea)
                    e.Allow = false;
            } else {
                if(e.NewArea == FieldArea.DataArea)
                    e.Allow = false;
            }
        }
    }
}!b�PNG


IHDR�a)IDATx^m�MHUo�W�JA�E�7��Z�&WDWI����ZE��EEpŖ��F�� j�Jąn)�"�J��@����;�u8���a��3��=E�������v305�]�Xͷ�UMI�d���y������
0̪Z��C/��}@����E$Fb0�F�,"	"d��(1F�z�|��xP�8����:vo�c�z�U�߉���_��ï�@�� ��Z`~)c5�H4�I�!�=�"+���lDu0��.�ɔT<Y^1�X�� �_?��PU��b
N�F�Z���/g��mտ���4�!���6�K7�PM��Oߗ�w�8�
�q�tң�u�q��Qe��L�A�&������[x��3�_^��%IR��6�<'F�ݧN��O�g҄�r�$M�*ʩ7�'`��	Ǿ�?�`���=Qypm����F8h��������_cf~L}yr���l������򨓨*��<F��R����k�����et���Wd��_�'�����Z�610<�կ����E%���\�͕�f���u
���� IEND�B`�!B�PNG


IHDR�a	IDATx^œ�KU]��z(�&B5�����>f�Bi�Ԡ@��q�� 

"�A4K�$!�Rd�W��I�1�0	IBLӛ�={��wm��ڛ�Zg���sN��le��⊞t��j����C�g�\D@���{�Ɨz��1�Օ�D1�w�vD�Q�ֳ<n&v^P�յu&�Z����ﳿ�V����!JmRe [Zΐ8G�u3a�u3�K�����=-�8W��8�qΑ$��֖�M<�s�@���e?MSu�0���R~��k�����](K���'·|����(ei%]����c��0�덝�<�{n^��9�=�"*:Q���k��(G�OY�[+�DT�fK+r��l���-������)�⃼��EMZCϿZ�J�ʣw3L-BIu
M�쮾B��
��(���)a�L=����A��$���tt
��7Ɨo?i��p� DL ���Bo\8���eS���!d�|����g�D��tz�*ŋ�[�Q���f+ۤx��ƿ��z9��IEND�B`�!��PNG


IHDR�a�IDATx^u�]HT[�g<Q�IJ��L�,��4Ʀ��	�(�z��"Рz1z����"?�A�2g��(J
53��fg��u���t5����~����c����P�\J	)(R��Y�Y�@(����W����X��i?����
"�(DY�d�W��!
�s�&�6�������0ɮ�{K@���ߡc?��m�AdUU/{u�L�����ZSp��d(N.��\H��O��z{X_vCL�O�22:MAv��-�$�%����k$�\(���w~o{
��0z���''=&g�H�s�/��s��0qh�;�G��8:R�p$X�O���
�t�I�n�&s��h&".�-�����}����<nKl��Ɓ��r�q Zp��Ok�Gpn�~�޿���j%�<%8^4�����Ht��\�`��38��Ş�o��+�4\Wx
6�
�⨱coe1��nJ��_�@Ez��$'���.$�d�C��ܭ/�246MAeI)���'���*i9%��Ӿ���
�F�p�#��B̅��E�P��A�JX8!����tb��2%$LC"}�r�[mBA@� "!�Q�l@�0�s!���Hş���`��,30�����Xb�yR*$zE���L��l8�@d����CVP�(�G�<%�X�/���f�;߷IEND�B`�!6�PNG


IHDR�a�IDATx^m�Ohe��ٝ���M����I#Vj�H{p%(��*�EDЃ�C�kA�K-��A,xH���*�P1���J��C��I[h�ͺ����d2�����^x�=<�g�a�W'_�c�X�vg��'\W>�*�xr�ԧR�g�����D]L�|������űѝ	WB��&�lV�ҕx`�N���~�����Z��!�'I�������"2ۢ4�};*�������y�A.?�`!�e���wk
ҙt����)��~�Oj\����Y|��wd%����U�9�2R�	��@�@t���o�噳'w���+v���vO�_�ڿ��x�ZHgS����&\'�戵[�)�0�Ԝi�t
6qz�P����U��"�]�Gq��-�4g+�l?��e��>~p�������v�ґ�	?*��[-n���忷E�`����Y,��Y�N�/���O2���r���U�kw6NN�͟x�0��:���ӧ�W6�x6���?�E����ɼ����t~�����a���t2���]��-��`��g*,/]ƪޡm���K����[5��T�1���rz|gaq̸�ūm=��M&��r��NLp�/�X!��s�w[s
K4�/MO����)�ͺ%i:�+�A�x�N����:͕�A�B<���wd�&7�m:�O����p���P1��>~YÓ��!!๢`J)g�?��@�k�1��]�E�,,U�A��2�7�b���T�IEND�B`�!��PNG


IHDR�a�IDATx^���KSa�O�M��E���_ԛzSf$����ͼ,E�tx�ۼ%
���l�5�
祕�f�K����bҋ$������l�=��,|x���C�-��~l�.�Ï��Ֆ����Z�TԠ����ȕ�A�V�l���E��R�+MHo�Cj}..֊�P�1DM��:�F0l����x�^x��7����r��t�g���Ѝ��L�@�H!��y�?����X���mУxK�˰�9a�;0>�*V��ACj��_B�.��n@�;j9&gM����킍�Wmk�X�XY�!��*�A����6��@��S�Ӹ�R��'Jh�����֩����1�	?,VĔ^�
��<Y9��!�g<�ř�Xd�@�}�s��O�/;���B�	yR8����x6�Ȉ#�I2OΙ�_)F��hU�P��yB8\o����\VG`Az��0��b�=^:�52e�É�Z5N%���K�{9��J����d|~Z���dސ��BY�gvbS�aw:�?-~A�F��f�z�w=|j�ĭ�3�>�_�H?:
=��t�ߴ��A[�H�{Z����*���x1�>*t�Ik�{�g�$"$Ir�P�E�|qN^��-��`�HϿf ��.B�@�@0� �,��}�܎[a���%�_��v�4�ߨك��{!��~���I�m����IEND�B`�!��PNG


IHDR22)�x�	pHYs���o�dPLTE�����Ɯ��BBBRRR���sssccc�����筭��������ƽ������sskRJJJJJ��������֭��������ƽ�����ﵵ��{{������ZZZ����{{{{{skkc���ccZ��{���kkk���skk���������RRJ���������|||991���!!!���������kcc���111��������ν��������fff>>>)))***���777������������{ss���������������������������¯������������aaa����ú����ʿ�Ⱦ�Ȣ�������ʺ�ij������999���|vv���������¾��������ZZR333������ZRR��̯��11)�Ȯ�������ȴ��������ˠ��ssc���{sk���JBB����Ӱ���������������������������{{������������ı��������;;;ooo����������%i�tRNS@��fhIDATx^Ֆc�$I�'"mEm{lkm۶m���uf��;���Ӟ�ߟs�u�$L�`�N?�ܭ���0�z���>���a7�|�`��{�@�z����=�d<0>q�kZo�#�
ŗ^�!�V];�1uKڰ��y{$q��J�H��CB��"���#��&0��E�m�}d�"�#z��O�,%^\t���}��kfI{v��2(�Ŗ�W�J�w"�Z���ev֟wS�噭����&�2[��E7��[+x����.ҹ�_9����#�K�,!�e��drA�O�}��t!�ҩ���b���f��� �0IӲr���xr��.u��Hd?AV�	��a^E7��.�)<Z�F�\��#Y�%��X9�鴚��P��']����"t��_4�$NheV����7�$�0��E(�R��J<�C�c���H!�M3R)��r��X��t0�!�G�g@��!Gc\R:e�I�E1�Lf�0�!�K�,co����	��X^��j.��|ѓ�j
EszpƖ�j�J�4�,��x}`]� HZA��(�4(�[�F�X�������xj�P�F����ѹz��u��UIZ�R���*��c2;�;���y��z�\Nb_�8�89x*g&�潜�bs��si������d�@ w*�7+N!��
�\��z^NVB�qLd�ṡ{�,1�|9iK��YE2t[酂�;��޼/"���;YGS��!��y��O�n��t�FW�
�D9^�|���\t,�
��_�r�4�60��M78n�[9���!��W_�v�I&�u�����e���O?��߅A���o��a~��Ͽ�6/���?����IEND�B`�!N�PNG


IHDR22)�x�	pHYs���o�dPLTE����������������������������������ƽ�����ֽ�������֥�����������ƽ���������������������������������������樂��ƽ�����������Ƶ��֟����Ό����ƪ�������ޢ�������������������ʛ�������盛������������������ƥ����穩���ġ����������������પ������������í��������������Ľ���������̵���ú��������ƽ��������ľ���������|||�����������ò���Ľ������������������������������������������������������Ѱ�������������ƨ������������ȿ�������ӵ�������×�������ȡ�������������������������������ͳ������������������ʺ�������������±�������������Ȱ�A�tRNS@��f�IDATx^���+��,m��غ4ƶm[϶m��?�v��;��w��W�۪J�O����N����S~���K?|�J~wp���A/wKݼ���`�ءwW_��A��S�3�{��'/�8�V�ΥA��\�4�Y�?}�Eđ��W=�I��6I�t?ILfB���.(�\��G�����4cL?*5YK���]�^@|�����L�6��J"%@�B�(%���6q�-�s3hۚ����&�"�����9�SU�ġ|�%3&!/�M��n\�h�hwMI��h���JD��S���'���IY���i�&jL{5�L�›�5/��\�f61F$��!掉�6���r��������\Y�%m�7����� �C�⑅����[�35��=K�;@�Zb���ǟ�#�T�C�F�>RG�fU^X�.5)�C��'���V�>�N�B��o�qLa;��O ��8�ɡ�'^���2)�`�=	B�$Aq'e����1����Oևe�\���(�CH1sL*&�
��kc�Ūzc}H>��!"a��q��t���;���*?~�,�$�A� ��p�={OнwL�W
�!x��Ϭ��Z+�^1l��ᦫ&j~L>�^�L
C��j�ֻE���k�hL?8&�Yh,�c��^��cO<�DxzL�UUoi�&iĎ��0���ic>4&�����lbIa@�t:��(��dJ��6Nf9�0
��)C�v('�nw$��Y���G�����hv�8	0鈊��u���+y:;�'�{%Ӡ��f�FpP|lLnݜs�ᬱ
���=xE@h?�1᝕�(��
P�= �
D�PC,@ŧx���\�#ll`�SS�u���ר�,��O�g���8�2S�3Ԡ��&͊��3���m̜+u>��L�D��W�$ 6�\k?��0��!M	��.c�ۑ���n��᪛��e�'DQ���%�-��MO�-�<�2H��~�|��(*��k`{��2_[���e�<�\�YG�b���7Z��Z/u��5�R�U�,DVG����[�[�s��ٳe���W,�F�w���s�N�ײ.�
�6�բZ�"��M���nvYV,d)�VX�]�܏��.��~�6��,C�,�r��u7���Es��1�s΄f��eA�_^���;�׿��|��ߜ�<ow{��~��ֻ���_����W���?���p�&�3�$���KIEND�B`�!��PNG


IHDR22)�x�	pHYs���o�dPLTE��������Ɯ�������{{{ZZZ���������ƽ����������sss���������{{s����������������{BBBccckkk999ssk��Ό�����RRR����ƽ��֥��ƽ�kkcRJJ���|||����{{���ZZR{ss������ss{����������{������������***���fff!!!>>>777JJJJBB������Ą�������skk������������11)��������頠����111���kcc))!������|v|�����׹�������͋�����JJB���33+���������)))�ſ�����������һ�����BB9�����������٤����������ܵ����М������������������������赭�������ה�������cZc�������������������������������Ȼ��������������ooo;;;�:�tRNS@��f\IDATx^Ֆ��H���i����6��m۶��r�o�L.:��}���>�_�S�$�_A�_��ᡃ�v�)���S�߉e�(<�
�;v,Y8vϩI��|�~3w���n�?�eMJ�h�'���c�c�G�:ֲY�7M�o�6���������Ǧ$;ݮ�+mV�׍0�VG�ex�rWxn���r�6�'��Լ��EQ4��!n�����A����$,�,�v�۱9�+w����z[Ϊ��H�ۿ��.�h��@U͊ӹ���F0����Vt�VU����(K��
5}PMs	A�N)��,7p��u�x	J57$�ļ�����oh	}�2Ų3]�:���4�.��>�S�p����Q�ҡ�(XS��щe�\n�`�/r�*OM�i� @
U�/��#C�i���(! n�TY�3�z�R*�m*

��ά���-u{�e�P�v�pg�q�9c��Sv_V�R�6Q�Y�����)�.+ TC��8;�=���*�(ڋ��Bl۟�,�Q���B��5�V��Xʼ�s�a��,��H��ʫ�VVU�LI���]EJ�����JX^��K�uy�+�"Ē��XR��S�f��5�Ӑ���Z�'��ۧi_G6
}S��fE�^J�����ښ���!��A�C\��hZ�vϑ��MI#%�Uf�[��u��
�+����y��P#�^�&��y^H�0�AHj�iNJY~����I">��9!��z�>^ҧe��|�*+&˲x<i&G|@p��Y�K��I�?�/	�=�\W�ʧ����T�WV&�,f��XķߡV˃p=ˉ�]�?"˔pu��K��?�|
�٘��/��&U������~��Ͽ��'�����/�v�ږR��IEND�B`�!��PNG


IHDR22)�x�	pHYs���o�dHPLTE|||���>>>���ccc777!!!fffJJJ***��������ĸ���������������tRNS@��f�IDATx^͖G�0#�n:��i^6�����j~��̥V-�
-y�zfh�a��0:OG��B��XW1�H5�pjL���ĘW�b��c��9�ݑ��t�wc��V04)aSSGm�O_�F��L�l�iVL.
�vxQ$�Ȣh@�E�"�b�E�*�(��(x.���u�������<�J|��
��1|[�;��}��~+��}�w��a��7#
�6_�IEND�B`�!�PNG


IHDR22)�x�	pHYs���o�d�PLTEkkk���ccc���JJJ���sssBBB���{{s���������ZZRkkckcc999{{{������>>>RRR|||!!!���911ƽ�������cZZ������JJBZRR���{������***)))fff777ssk��������ʜ�����BB9�����ٌ��ZZZ���{ss��������������������ࠠ�������������������d]]�ȼ����̺����������������;���uu}�����񿿹skk��𦦦��癙�RRJ���������ccZ�����������޽���������׵�������������������������ϭ�������Ä���ʹ������kks��Ϲ���{{�������͵��uuu��Ϫ��qqk��Ơ��hhc�5�tRNS@��f�IDATx^ՖS�$1�;hc[�6ֶm۶���!U��73����~�_%9'¿�O�T67�˦p2�f3�Ƞ����pa���adhl[�yv��f0��clX�a�B���85��y�f`�@��.:�N�~���bN�g��s��
OJ���l٤�c�B�y;d�J"	!�e�[/��d�2�U�ú��J�[3�m4�%�^4Ck��YWJ-,�{E�fe�,���D�(uј��Q'�~���^I�DQ�D9ک�n#���r�#��I�QN�<��r%K�3�l	�R$%G�sE�B�I'JS��R/h<�\4-�9O,��
�lh2G�.�J�p�	��\�VT�J����o�TZX��[�����Nn��2�u��"ܙ���*�{�]s<o_��@�8'��Pk�e�9&<z,�S�癖“��J1�L�����Z�d�͛i�V
�b4���ە4?�A�F������4߾��~LV~��M�a����E�m�ZyIEND�B`�!��PNG


IHDR22)�x�	pHYs���o�d:PLTE����������������������������ƽ�����ֽ�������ޥ�����ccc��޵�������έ�������������έ���������޽����{������ZZZ���JJJ���kkcsss������ssk������ƽ�kkk!!!BBB���111���{{s���{{{skk��ƭ������������Ƶ��ֵ�����RRR���|||���fff***������999�ν{ss�{{���ZZR���ƽ���������ю��������������777===>>>������lll���rrrJBJ��������������ƽ���wwwzzz�ſ��������͚��cZZ���)))����Ŀ|vv������{������γ������������������kks��991��ܛ����������������B99�����BB9������RJJ�����������������������������������������������ss{������������Ƚ������������������������H�.tRNS@��fIDATx^͖c�$I�']6ڶ��;���m۶m�m���ܙ~�=���*�5��r�?|�K�-W\u��_�!wv�G�Y�дRlD����K�o93�����ͭ�tɛ�m�t��mOv�S)���j&&%%o�2�ظ~�i�˯TU�*3&�Z�k*�X2�y����D�S�>�� xi���̸�LfD�k���瞂x�A�a�����x %ϸ��H5��O$λ�$��!"y�����<D�`���Ncp8��}����z=��Y��1�Y�8>���Ù��|�I�"��rV5�(�|A��*J��i��	�Z�nGB��'5��qˬ�(���4���Zq"��81��,���b6�;�����v�"�ha����*�6c�NǮ��M���D�mO03�`�,��Xr�9�ɵuu�������GT6!k��&/�<�]adDz9��y�����;�)���y���)z�Jm{�\��G�Ȳ0����m"��N�1�g�5��dӮ���l�ǀ��-rD�q��Ġ8MZ�,�K#�޸�o���"��inb�M��=��F���|��(#��J��!�48��H>M�35�d�5�Z���0�KC$(.	~�զt1�-���]�1_^�c%��G3��
�`@�8Ig	��l��*D�\�֭�F����ȅ+H �P�g�T��"�Rd!9�-��R�$5W\�?� ��)ϠI:�	uH���|�����b��� �&u
(�t� LAT�,wc��osq��B$`��8�H�@H�w2��d�uuI��![�؋PJ“0���2����2�,�"}y�۔Ip��H�s������JQ����
G�lE��6�2�faN*z���Ȍ��!�u!�
5N�L7Ç�S�L�#"Dp�6��M�X�uSW$e�m����7�S�1΂U��:���)���7����-�<�sc�[A�`A�ʘc����|{{��y�s(�D�[��93�K�Tlr���n� �_5�S0�b?hɘ����d��EWн�e`�)�Ҙ���׫�2H���}PG�Y�d��I�2��Q}�� tp*%k�]j�;V_��>�T���7.����q0�
��ԩ��g�@�ÈA �tk�iՙ�Ⱥ�Jd�E��W7��jy`&vtWF��7�!�‡2_����Ⱥ�}����w�R)'�k��J�����Ï?���Z5�T�uq6���_���uJ��O���NM�IEND�B`�!��PNG


IHDR22)�x�	pHYs���o�d�PLTEccc���JJJkkk���RRR���!!!BBB������sss���{{{�����ν�����ZZZ)))������|||������>>>���111999�����{kcc���***���fff���777���kkc�ƽ������11)���{{s���{{���������������}}}������������������������������ƺ��Ĕ�����ų���]]]��ľ������ڴ�ĦJJB�ظ�Ȼ������������ǻRJJ�������´����ƾ�����������ֿ���ֵ�������ۿ��ֿ�����))��������å�������©��ss{�������������᫫����qqq������hhc���Nl��tRNS@��f�IDATx^ՖŒ#1@cnfs�a������|kˇLv:��ik��,ɖ��Wĥ\Q��e��gKq���0�֡;yp��yd��ֶ���/T�h#�z����DQmͲw�K4��dt���	��vԏH8��1��eY�wCh���r�@o�(��2H�HO�
h0��x�~]���}�u�ͮ2�Ҩa�P��ޫ�T%K\�W�f�D������$C�h�ŽK��2P��\:,��,J
/pbzG���(Qhu�`�T*YU�f1�:%5��%b�w�R΢�e��T���e�
�>$���Lÿ�E�xa�x� �-���.��^�l�`�:����4n���w����[|��Mn޽g/��:�??x�j�؊��!���Q����@&L����c�(#�7��u��y4���2�5l�z��/s� koA[L���/Cv%�����G?}�/ð�ŷ�?@�������o=7>ώSHIEND�B`�!u�PNG


IHDR22)�x�	pHYs���o�d:PLTE���������������������便�����������ƽ��֜�����ccc�����sss�������ƽ��ε����������Δ����{�����������ssk���{{{���kkk�����ν�������έ��111!!!RRRBBB���cZZJJJ������999���skk����Ƶ������{ss|||������fff���***���{{s�{{ƽ�������������kkc�����{���kck��魥�RRJ������ZZR������JJB��ť���������񾾾���777DDD������������>>>����¾lll��񠚚����Ⱦ������{s{woo������jjj������ij�¯�������ΰ������Ȣ{{�����Ȯ�����{sk�����ſ�����vvv����ȴ����������ʺ���������������)))��������������ÿ���������¿���������������ZZZ�����Ľ�������ӆ���������������������ź�����ͫ�;tRNS@��f�IDATx^Ֆ�$IǷд1��l�m[g۶m�6����~���a�~����AL}"+�����V_u��;��P��X]�0p��K��JJӅܪ&�������֬���IM����1�X����V�O�v9�r�`lcU��W_�q�P"�3hWʭ�E?!lIU� t�=KWlH$z�D���a�Q�(R"�T�{�_����DbxȘ͖q�U9WQ)��2bo�u� c�D6�����V%ϵ�:B�E��[� z�j��~��K��3Ȗ��g���z�VC@��Mٌ�9L�(�W�{��My>F��ե��D�d��٤�qC��Ba}��SG�=:?��C�^*e3�5���+N1���J�*)"��rYW�A 3��k���#TjlQ��j�iKl������Z  ]o�a{�Q|"˒��E�(E12�`W$��Z%#��z�lwF\�J2�Xj�ڔ��o�(\�njrRf2��g�CM�dy�(IdT²3�bdu"����	-���l��`�RO�$������Gb���|,�M
P-��>�*�G1���(F�=#F���J)�#���j1�U�(���1ru�LVf� ���-�Ax�c1�T��F�Рa<�ˉCT1��]/�Q7�N��5���R�ޝ�:��'uF�YL]u��y>BƌZ);�;�_0E��Iy�����{�^�gZK�I��$c��ğEX����9`oJ	P̱�aݼ/Q*��������|�z�`�dtMQb��W��Ì������g�vz:�hQ���X*L1�!����g��X-%hu�#��9eY�:����إi�ZzRtq�y�p�
��<k���U�vysYЁ��(#�<�*�n��4��ㅅ��i6A�<u�z���Plo,�ʾ��R+#��
<��[���qܕov��p�N���
��������B$�A����f���5�4	��HyR�*��6��wαw�ͦ�����DhoJ�S�T
w���i�o�)!^���U<��eP��uK��AZyLQT	�#Ah9��Ï���Йe
�p �k���
S2����K_
�d�0jb�ő��,s�Egk.hr�*0s���g˟���K�\������&0��G�"�`h7`�-��&&_~����o�I
�	�PZ�}�~w����J*�M
�=����u�����/�_���?��{���F����IEND�B`�!#�PNG


IHDR00W���IDATx^�ylUe�ǿ��K{�х.��@�LiY�
�0���&D�
�"�l���c&8��щ��f�8�83$��3�a�@6dkii{�s�9g�Ϲ��6X�?
.ɜ��}�=�>��>��V1?�ˁ���"P�z��=��/Y�N��+D��7��v6o�|��ϟo����fee�
�]���y���g֯_����"��s�Z�ʕ+�Ol�~������Wh�0M� 8�梢��?����ĪU��
6�6}�G����E~�1>�[׿���P聎���c�=�S�����lz��'���ޞ�J�L��lelѢEwmܸ�uIUU�r����J떼O&��})
�a�]��gV�7�]�v]zꩧF�A,X�@�lll�`�4
//�Ǹ1Հ�¿><�Ϗ�eL[���gQ���H$��	X�p��:3f���|ki<=����ؑ�(�?1Q�'�#��:�G���C��nڴ)�t�R㇊��ɓ'/��!iIX�� k�*�X��O������
x��(h�L��oo�ŋ��_�zu���]lOT���G�#JRi���X�=�N��΂1c�}��ݟ�����y��;
qUVV6�;Ex4�@ð0J��@�
��FUQV������.ю������h[�l�fϞm|/��f�pU�f�/���}�ω��R@��=�����hDŽ�����h���J���,d*�e����茎�}������iSH��1jx5J�����B���+P�V���a%��A(�.�*`�(Im۶͘6m�q]#�|�r�k֬ip�����$�/�J)͏7�ڇm�wCUS��X�����b��"|��Q\��NR�\s���^:p�.+
�N!q������v婯+G���X�_���8x�O1�<M���>�;�[�_�ӡ�������$w�ءO�4ɸjb�7]+V�0Sg�ڵ��sw���ۉ񣫁T'`8�o�I���Rh`z�h�14�X��s�qk)�z�0:"*]���Emm�Ç�)&D�Q횟�h�Y6����P�_tEb5�
����
F�4��}��(q�B'j��p��rtv&d\���etJH���ꐹ�}J!��Y�o勚(���"/7��S�t�Q�(�HZɊ��̱B�9�q-Ŷ��b��~|�U'\NCN�����iǏ�*^سg����`\�*��ʜ������1��&1lh
��x�hgZT���̲
8��%TU�dqK�vT��1uB1^�s+����W2�ޣh	e��0��pϲe����<*���������>�|h��w������e@��T輀9S*��~�;�)=���xf����ӛ$
L4��S�v��~SSS������59yn A�=-������|||�
�QrI
�U
�j���0�����
7 �fi����
�>G���/)dz��8�y:\r[R"��?a|�Uyt��"�ŸC�|��m4;10\JQWb<�J��:�����ko�p�R�NPKwS������
��KEDr�YJ�?d��h$��c� 7ϙ�(RDK��Ts+QY�C�:g�U����Xz���H
#�s�����Mا7)����U�ǩS��N#�?��;z��%��h,����jF��p]ZbEA�����^��A@뤀v a�]Ѐ�Y̜���p6E��^I�N�_�!b���x�'d�=}��!<�< �یl�FA�_�o���$b�*�#��E�"�]@�P/�Za�%�D�PQ܂Y���@d��gq�W @����J��p�X����,g_���yA~��?Ht��G*�A`y6Ev���=Ma(D�`�D�$MZ��O�&/�˳�PMbG.'�"y�K�ޤ��B<3g��	5���u'����H���-R4I��
/E]M���x��9�"�0W�~Y���2`g�,nM\4��"�X,�|��u�֙�xXy�����$��r1n�@@�`�MXD�&�+�u̙Z�����'m��n	��(N r�&qCU6ߕ�(��̅;
����yyP����b�J$|�&�#��Z�}�"�LuyK�ᅝX��;X�n/��ĝ�)�mM`͞/�#0����YUք��	}E� D\
�o�7ɢ����tٌ���cGTɈml&�d������/�Ʊ/;q�T'~�����s�t�F�6
���7�1���,�v*�,!��O�$���>��`n�%C~�:�\``��v#]�瀮}��@�<r:��0�"bȿ?mRb��z� M��Ǒj��a�M3# pɵ���i%V��J�_���"�7s?��DWz��	
J��g�����Tr�0�,�X"	�I��ې���RG��5�,pm��|�Hlښ�}�/�#N2��O:��8�������h�D�/
��q��Rx�\���4��I�$�1���{(�������S)���.�B�{>�WX1��~c
�Bn'_�(����&�ǻ��w
+�惺�)��L�Li
���_��l���+�x�.��^(��@����F2�Z'*J�{*�ͤ���#��Շu�ARǎ����V�����%If�%a�GQq�0o:�	�S��"@�x������k��2[��d���K�q����0��I�دS��Y"�X}9��D�y�FԺ7�/��-�#ƴ�석>l�{�N)�?eFY Z.�q�vfLZT�tI�>��2��g�@@�����шqe
i$�곙��荀��5
nd_#��}"Lʜ	����<�����~
�<B�뽼�U�FR=E@'����prz#QC^ۓ���
/�v+ڭ=.�6��ӬjU���Wl�����\��3/Y_�w�O����3�2now#�e|��GOt'I�A��{D���U�� �Ƭ�=	�n���k�A�1<��٣��O����߲|TIEND�B`�!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.CellTemplates" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="/PivotGridDemo;component/Controls/ControlStyles/InplaceProgressBar.SL.xaml" />
            </ResourceDictionary.MergedDictionaries>
            <dx:BoolToVisibilityConverter x:Key="BoolToVisibilityConverter" />
            <DataTemplate x:Key="CellTemplate">
                <Grid>

                    <local:ProgressBarContainer x:Name="cellShare" VerticalAlignment="Stretch" Margin="2,1,2,1" Maximum="{Binding Path=RowTotalValue, Mode=OneWay, Converter={local:RoundConverter}}" Value="{Binding Path=Value, Mode=OneWay, Converter={local:RoundConverter}}" ToolTipService.ToolTip="Share in product category sales" />

                    <Border Name="cellValue" BorderBrush="#1F000000" BorderThickness="1" Visibility="{Binding Path=IsCellValueVisible, RelativeSource={RelativeSource FindAncestor, AncestorType=local:PivotGridDemoModule}, Converter={StaticResource BoolToVisibilityConverter}}" HorizontalAlignment="Center" VerticalAlignment="Center" Background="#FFFFFFFF" CornerRadius="2,2,2,2">
                        <TextBlock TextAlignment="Center" TextWrapping="NoWrap" Margin="5,-2,5,-2" Text="{Binding DisplayText}" Foreground="Black" VerticalAlignment="Center" HorizontalAlignment="Center">
                            <ToolTipService.ToolTip>

                                <StackPanel Orientation="Horizontal">
                                    <TextBlock Margin="0,0,2,0">Sales of</TextBlock>
                                    <TextBlock Text="{Binding RowValueDisplayText}" FontWeight="ExtraBold" Margin="0,0,2,0" />
                                    <TextBlock Margin="0,0,2,0">in</TextBlock>
                                    <TextBlock Text="{Binding ColumnValueDisplayText}" FontWeight="ExtraBold" />
                                </StackPanel>

                            </ToolTipService.ToolTip>
                        </TextBlock>
                    </Border>
                </Grid>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Template">
                    <dxe:ListBoxEdit x:Name="templatesList" ShowBorder="False" SelectedIndex="2" Background="{x:Null}" SelectedIndexChanged="TemplatesList_SelectionChanged">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <sys:String>None</sys:String>
                            <sys:String>Share Only</sys:String>
                            <sys:String>Value and Share</sys:String>
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" RowTreeWidth="200" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category" />
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product" />
                <dxpg:PivotGridField x:Name="fieldSales" FieldName="ProductSales" Area="DataArea" Width="200" Caption="Sales" CellTemplate="{StaticResource CellTemplate}" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="ShippedDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="200" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.Xpf.DemoBase;
using System.Windows;
using DevExpress.Xpf.Core;

namespace PivotGridDemo.PivotGrid {
    public partial class CellTemplates : PivotGridDemoModule {
        #region static stuff
        public static readonly DependencyProperty IsCellTemplateVisibleProperty;
        public static readonly DependencyProperty IsCellValueVisibleProperty;
        public static readonly DependencyProperty IsCellShareVisibleProperty;

        static CellTemplates() {
            Type ownerType = typeof(CellTemplates);
            IsCellTemplateVisibleProperty = DependencyProperty.Register("IsCellTemplateVisible", typeof(bool),
                ownerType, new PropertyMetadata(true, OnCellTemplateVisiblePropertyChanged));
            IsCellValueVisibleProperty = DependencyProperty.Register("IsCellValueVisible", typeof(bool),
                ownerType, new PropertyMetadata(true));
            IsCellShareVisibleProperty = DependencyProperty.Register("IsCellShareVisible", typeof(bool),
                ownerType, new PropertyMetadata(true));
        }
        static void OnCellTemplateVisiblePropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
            ((CellTemplates)d).OnCellTemplateVisibleChanged();
        }
        #endregion        

        public CellTemplates() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.ProductReports;
        }

        public bool IsCellTemplateVisible {
            get { return (bool)GetValue(IsCellTemplateVisibleProperty); }
            set { SetValue(IsCellTemplateVisibleProperty, value); }
        }

        public bool IsCellValueVisible {
            get { return (bool)GetValue(IsCellValueVisibleProperty); }
            set { SetValue(IsCellValueVisibleProperty, value); }
        }

        public bool IsCellShareVisible {
            get { return (bool)GetValue(IsCellShareVisibleProperty); }
            set { SetValue(IsCellShareVisibleProperty, value); }
        }

        void OnCellTemplateVisibleChanged() {
            if(IsCellTemplateVisible) {
                fieldSales.CellTemplate = (DataTemplate)Resources["CellTemplate"];
                fieldYear.Width = 200;
            } else {
                fieldSales.CellTemplate = null;
                fieldYear.Width = 100;
            }
        }

        void TemplatesList_SelectionChanged(object sender, RoutedEventArgs e) {
            switch(templatesList.SelectedIndex) {
                case 0:
                    IsCellTemplateVisible = false;
                    break;
                case 1:
                    IsCellTemplateVisible = true;
                    IsCellValueVisible = false;
                    IsCellShareVisible = true;
                    break;
                case 2:
                    IsCellTemplateVisible = true;
                    IsCellValueVisible = true;
                    IsCellShareVisible = true;
                    break;
            }
        }
    }

    public class RoundConverter : MarkupExtension, IValueConverter {
        #region IValueConverter Members
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            return System.Convert.ToInt32(value);
        }
        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            throw new NotImplementedException();
        }
        #endregion

        public override object ProvideValue(IServiceProvider serviceProvider) {
            return this;
        }
    }
}!2<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.ChartGeneralOptions" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dxlc="http://schemas.devexpress.com/winfx/2008/xaml/layoutcontrol" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" Width="275">
                <dx:GroupFrame Header="Chart Appearance" Margin="0,0,0,4">
                    <StackPanel>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="Auto" />
                                <ColumnDefinition Width="Auto" />
                            </Grid.ColumnDefinitions>
                            <TextBlock Margin="4,3,7,0" VerticalAlignment="Center" FlowDirection="LeftToRight">Chart Type:</TextBlock>
                            <dxe:ComboBoxEdit Grid.Column="1" Name="cbChartType" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="4,0,0,4" SelectedIndexChanged="cbChartType_SelectedIndexChanged" TabIndex="1" />
                        </Grid>
                        <dxe:CheckEdit Name="ceShowPointsLabels" Checked="ceShowPointsLabels_Checked" Unchecked="ceShowPointsLabels_Checked" IsChecked="False" Content="Show Point Labels" Margin="4,4,0,0" TabIndex="2" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Chart Orientation" Margin="0,0,0,8">
                    <StackPanel>
                        <dxe:ListBoxEdit x:Name="crChartDataVertical" ShowBorder="False" SelectedIndexChanged="oncrChartDataVerticalSelectedIndexChanged" SelectedIndex="0" Background="{x:Null}">
                            <dxe:ListBoxEdit.StyleSettings>
                                <dxe:RadioListBoxEditStyleSettings />
                            </dxe:ListBoxEdit.StyleSettings>
                            <dxe:ListBoxEdit.Items>
                                <sys:String>Generate Series From Columns</sys:String>
                                <sys:String>Generate Series From Rows</sys:String>
                            </dxe:ListBoxEdit.Items>
                        </dxe:ListBoxEdit>
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Pivot Grid Options" Margin="0,0,0,8">
                    <StackPanel>
                        <dxe:CheckEdit Name="ceChartSelectionOnly" IsChecked="{Binding ElementName=pivotGrid, Path=ChartSelectionOnly, Mode=TwoWay}" Content="Chart Selection Only" Height="16" Margin="4,4,0,4" TabIndex="4" />
                        <dxe:CheckEdit Name="ceChartShowColumnGrandTotals" IsChecked="{Binding ElementName=pivotGrid, Path=ChartProvideColumnGrandTotals, Mode=TwoWay}" Content="Show Column Grand Totals" Height="16" Margin="4,4,0,4" TabIndex="5" />
                        <dxe:CheckEdit Name="ceChartShowRowGrandTotals" IsChecked="{Binding ElementName=pivotGrid, Path=ChartProvideRowGrandTotals, Mode=TwoWay}" Content="Show Row Grand Totals" Height="16" Margin="4,4,0,0" TabIndex="6" />
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Margin="4,3,7,0" VerticalAlignment="Center" FlowDirection="LeftToRight">Chart Update Delay:</TextBlock>
                            <dxe:SpinEdit Name="UpdateDelay" Value="{Binding ElementName=pivotGrid, Path=ChartUpdateDelay, Mode=TwoWay}" Mask="N00" Width="60" Margin="4,5,0,0" Increment="100" MaxValue="5000" MinValue="0" />
                        </StackPanel>

                    </StackPanel>
                </dx:GroupFrame>
                <Grid Name="warningChart" Visibility="Collapsed">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="Auto" />
                        <ColumnDefinition Width="*" />
                    </Grid.ColumnDefinitions>
                    <Image Source="/PivotGridDemo;component/Images/WarningIcon.png" Stretch="None" Grid.Column="0" />
                    <TextBlock TextWrapping="Wrap" Margin="6,6,6,0" Grid.Column="1">
                        To chart Column or Row Grand Total values, enable the Show Column Grand Totals or Show Row Grand Totals
                    </TextBlock>
                </Grid>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <Grid>
            <dxlc:LayoutControl x:Name="mainLayout" AllowItemSizing="True" Padding="12" Orientation="Vertical">
                <dxlc:LayoutGroup dxlc:LayoutControl.AllowVerticalSizing="True" Margin="0,0,0,4">
                    <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="130" ChartProvideDataByColumns="False" ChartSelectionOnly="True" ChartProvideColumnGrandTotals="False" ChartProvideRowGrandTotals="False" ChartDataProvideMode="UseCustomSettings" CustomChartDataSourceData="pivotGrid_CustomChartDataSourceData">
                        <dxpg:PivotGridControl.Fields>
                            <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" AreaIndex="0" Caption="Product Name" Width="155" />

                            <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" CellFormat="c" />

                            <dxpg:PivotGridField x:Name="fieldOrderMonth" FieldName="OrderDate" UnboundFieldName="fieldOrderDateMonth" Area="ColumnArea" AreaIndex="0" GroupInterval="DateMonth" Caption="Order Month" />
                            <dxpg:PivotGridField x:Name="fieldOrderYear" FieldName="OrderDate" UnboundFieldName="fieldOrderDateYear" Area="FilterArea" AreaIndex="0" GroupInterval="DateYear" Caption="Order Year" />
                        </dxpg:PivotGridControl.Fields>
                    </dxpg:PivotGridControl>
                </dxlc:LayoutGroup>
                <dxlc:LayoutGroup>
                    <Grid Margin="0,4,0,0">
                        <dxc:ChartControl Name="chartControl" DataSource="{Binding ElementName=pivotGrid, Path=ChartDataSource}" BoundDataChanged="chartControl_BoundDataChanged">
                            <dxc:ChartControl.CrosshairOptions>
                                <dxc:CrosshairOptions ShowArgumentLine="False" />
                            </dxc:ChartControl.CrosshairOptions>
                            <dxc:ChartControl.Legend>
                                <dxc:Legend ReverseItems="True" />
                            </dxc:ChartControl.Legend>
                        </dxc:ChartControl>
                    </Grid>
                </dxlc:LayoutGroup>
            </dxlc:LayoutControl>
        </Grid>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!O0using System;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.Charts;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class ChartGeneralOptions : PivotGridDemoModule {

        static readonly string[] ProductFilterValues = {"Chai", "Chang", "Chocolade", "Filo Mix", "Geitost", "Ikura", "Konbu",
            "Maxilaku", "Pavlova", "Spegesild", "Tofu", "Tourtière"};
        public ChartGeneralOptions() {
            InitializeComponent();
        }
        void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            ChartFactory.InitComboBox(cbChartType, null);
            pivotGrid.DataSource = NWindData.SalesPerson;
            SetFilter();
            SetSelection();
        }
        void SetFilter() {
            fieldProductName.FilterValues.ValuesIncluded = ProductFilterValues;
            fieldOrderYear.FilterValues.SetValues(new object[] { 1995 }, FieldFilterType.Included, true);
        }
        void SetSelection() {
            pivotGrid.SetSelectionByFieldValues(false, new object[] { "Chai" });
            pivotGrid.SetSelectionByFieldValues(false, new object[] { "Chocolade" });
        }
        void cbChartType_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            if(cbChartType.SelectedIndex < 0)
                return;
            chartControl.Diagram = ChartFactory.GenerateDiagram((Type)((ComboBoxEditItem)cbChartType.SelectedItem).Tag, ceShowPointsLabels.IsChecked);
            pivotGrid.ChartProvideEmptyCells = IsProvideEmptyCells();
        }
        void ceShowPointsLabels_Checked(object sender, RoutedEventArgs e) {
            chartControl.Diagram.SeriesTemplate.LabelsVisibility = object.Equals(ceShowPointsLabels.IsChecked, true);
            chartControl.CrosshairEnabled = object.Equals(ceShowPointsLabels.IsChecked, false);
        }

        void oncrChartDataVerticalSelectedIndexChanged(object sender, RoutedEventArgs e) {
            pivotGrid.ChartProvideDataByColumns = crChartDataVertical.SelectedIndex == 1;
        }

        void chartControl_BoundDataChanged(object sender, RoutedEventArgs e) {
            if(chartControl.Diagram is SimpleDiagram2D)
                ConfigurePie();
            CheckWarningVisivility();
        }

        void ConfigurePie() {
            Dictionary<PieSeries, int> counts = new Dictionary<PieSeries, int>();
            foreach(PieSeries series in chartControl.Diagram.Series) {
                counts.Add(series, GetPointsCount(series));
                series.Titles.Add(new Title() { Content = series.DisplayName, Dock = Dock.Bottom, HorizontalAlignment = System.Windows.HorizontalAlignment.Center, FontSize = 12, VerticalAlignment = System.Windows.VerticalAlignment.Center });
                series.ShowInLegend = false;
            }

            int max = 0;
            PieSeries maxSeries = null;
            foreach(KeyValuePair<PieSeries, int> pair in counts)
                if(max < pair.Value) {
                    max = pair.Value;
                    maxSeries = pair.Key;
                }

            if(maxSeries == null)
                return;
            List<string> values = new List<string>();
            foreach(SeriesPoint point in maxSeries.Points)
                values.Add(point.Argument);

            maxSeries.ShowInLegend = true;

            if(chartControl.Diagram is SimpleDiagram2D)
                foreach(PieSeries series in chartControl.Diagram.Series) {
                    foreach(SeriesPoint point in maxSeries.Points)
                        if(!values.Contains(point.Argument)) {
                            series.ShowInLegend = true;
                            values.Add(point.Argument);
                        }
                }
        }

        int GetPointsCount(PieSeries series) {
            int count = 0;
            for(int i = 0; i < series.Points.Count; i++)
                if(!double.IsNaN(series.Points[i].Value))
                    count++;
            return count;
        }

        void CheckWarningVisivility() {
            PivotCellBaseEventArgs cellInfo;
            bool showWarning = false;
            if(pivotGrid.MultiSelection.SelectedCells.Count == 0) {
                cellInfo = pivotGrid.GetCellInfo(pivotGrid.FocusedCell.X, pivotGrid.FocusedCell.Y);
                showWarning = (cellInfo.ColumnValueType == FieldValueType.GrandTotal && !pivotGrid.ChartProvideColumnGrandTotals)
                                || (cellInfo.RowValueType == FieldValueType.GrandTotal && !pivotGrid.ChartProvideRowGrandTotals);
            }
            else {
                foreach(System.Drawing.Point cell in pivotGrid.MultiSelection.SelectedCells) {
                    cellInfo = pivotGrid.GetCellInfo(cell.X, cell.Y);
                    if((cellInfo.ColumnValueType == FieldValueType.GrandTotal && !pivotGrid.ChartProvideColumnGrandTotals)
                        || (cellInfo.RowValueType == FieldValueType.GrandTotal && !pivotGrid.ChartProvideRowGrandTotals)) {
                        showWarning = true;
                    }
                    else {
                        showWarning = false;
                        break;
                    }
                }
            }
            warningChart.SetVisible(showWarning);
        }
        bool IsProvideEmptyCells() {
            if ((chartControl.Diagram is SimpleDiagram2D)
                )
                return true;
            return false;
        }
        void pivotGrid_CustomChartDataSourceData(object sender, PivotCustomChartDataSourceDataEventArgs e) {
            if (IsProvideEmptyCells()) {
                if (e.ItemDataMember == PivotChartItemDataMember.Value && e.Value == DBNull.Value)
                    e.Value = 0;
            }
        }
    }
    internal static class ChartFactory {
        static readonly Type XYDiagram2DType = typeof(XYDiagram2D);
        static readonly Type SimpleDiagram2DType = typeof(SimpleDiagram2D);
        static readonly Type DefaultSeriesType = typeof(BarStackedSeries2D);

        static Dictionary<Type, SeriesTypeDescriptor> seriesTypes;
        public static Dictionary<Type, SeriesTypeDescriptor> SeriesTypes {
            get {
                if(seriesTypes == null)
                    seriesTypes = CreateSeriesTypes();
                return seriesTypes;
            }
        }
        static Dictionary<Type, SeriesTypeDescriptor> CreateSeriesTypes() {
            Dictionary<Type, SeriesTypeDescriptor> seriesTypes = new Dictionary<Type, SeriesTypeDescriptor>();
            seriesTypes.Add(typeof(AreaFullStackedSeries2D), new SeriesTypeDescriptor { DiagramType = XYDiagram2DType, DisplayText = "Area Full-Stacked Series 2D" });
            seriesTypes.Add(typeof(AreaSeries2D), new SeriesTypeDescriptor { DiagramType = XYDiagram2DType, DisplayText="Area Series 2D"});
            seriesTypes.Add(typeof(AreaStackedSeries2D),  new SeriesTypeDescriptor { DiagramType = XYDiagram2DType, DisplayText="Area Stacked Series 2D"});
            seriesTypes.Add(typeof(BarFullStackedSeries2D), new SeriesTypeDescriptor { DiagramType =  XYDiagram2DType, DisplayText="Bar Full-Stacked Series 2D"});
            seriesTypes.Add(typeof(BarStackedSeries2D), new SeriesTypeDescriptor { DiagramType =  XYDiagram2DType, DisplayText="Bar Stacked Series 2D"});
            seriesTypes.Add(typeof(LineSeries2D), new SeriesTypeDescriptor { DiagramType = XYDiagram2DType, DisplayText="Line Series 2D" });
            seriesTypes.Add(typeof(PointSeries2D), new SeriesTypeDescriptor { DiagramType = XYDiagram2DType, DisplayText = "Point Series 2D" });
            seriesTypes.Add(typeof(PieSeries2D), new SeriesTypeDescriptor { DiagramType = SimpleDiagram2DType, DisplayText = "Pie Series 2D" });
            return seriesTypes;
        }

        public class SeriesTypeDescriptor {
            public Type DiagramType { get; set; }
            public string DisplayText { get; set; }
        }

        public static int CompareComboItemsByStringContent(ComboBoxEditItem first, ComboBoxEditItem second) {
            string firstStr = first.Content as string;
            return firstStr == null ? -1 : firstStr.CompareTo(second.Content as string);
        }
        public static void InitComboBox(ComboBoxEdit comboBox, Type[] diagramFilter) {
            List<ComboBoxEditItem> itemsList = new List<ComboBoxEditItem>();
            ComboBoxEditItem item, selectedItem = null;
            foreach(Type seriesType in SeriesTypes.Keys) {
                SeriesTypeDescriptor sd = SeriesTypes[seriesType];
                if(diagramFilter == null || Array.IndexOf(diagramFilter, sd.DiagramType) >= 0) {
                    item = new ComboBoxEditItem();
                    item.Content = sd.DisplayText;
                    item.Tag = seriesType;
                    itemsList.Add(item);
                    if(seriesType == DefaultSeriesType)
                        selectedItem = item;
                }
            }
            itemsList.Sort(CompareComboItemsByStringContent);
            comboBox.Items.AddRange(itemsList.ToArray());
            comboBox.SelectedItem = selectedItem;
        }
        public static Diagram GenerateDiagram(Type seriesType, bool? showPointsLabels) {
            Series seriesTemplate = CreateSeriesInstance(seriesType);
            Diagram diagram = CreateDiagramBySeriesType(seriesType);
            if (diagram is XYDiagram2D)
                PrepareXYDiagram2D(diagram as XYDiagram2D);
            diagram.SeriesDataMember = "Series";
            seriesTemplate.ArgumentDataMember = "Arguments";
            seriesTemplate.ValueDataMember = "Values";
            if(seriesTemplate.Label == null)
                seriesTemplate.Label = new SeriesLabel();
            seriesTemplate.LabelsVisibility = showPointsLabels == true;
            if(seriesTemplate is PieSeries2D
                ) {

                if(seriesTemplate.LegendPointOptions == null)
                    seriesTemplate.LegendPointOptions = new PointOptions();
                seriesTemplate.LegendPointOptions.PointView = PointView.Argument;

                seriesTemplate.PointOptions = new PointOptions();
                seriesTemplate.PointOptions.PointView = PointView.ArgumentAndValues;
                seriesTemplate.PointOptions.ValueNumericOptions = new NumericOptions();
                seriesTemplate.PointOptions.ValueNumericOptions.Format = NumericFormat.Percent;
                seriesTemplate.PointOptions.ValueNumericOptions.Precision = 0;

            } else {
                if(seriesTemplate.LegendPointOptions == null)
                    seriesTemplate.LegendPointOptions = new PointOptions();
                seriesTemplate.LegendPointOptions.PointView = PointView.ArgumentAndValues;
                seriesTemplate.PointOptions = null;
                seriesTemplate.ShowInLegend = true;
            }
            diagram.SeriesTemplate = seriesTemplate;
            return diagram;
        }
        static void PrepareXYDiagram2D(XYDiagram2D diagram) {
            if(diagram == null) return;
            diagram.AxisX = new AxisX2D();
            diagram.AxisX.Label = new AxisLabel();
            diagram.AxisX.Label.Staggered = true;
        }
        public static Series CreateSeriesInstance(Type seriesType) {
            Series series = (Series)Activator.CreateInstance(seriesType);
            ISupportTransparency supportTransparency = series as ISupportTransparency;
            if(supportTransparency != null) {
                bool flag = series is AreaSeries2D;
                if(flag)
                    supportTransparency.Transparency = 0.4;
                else
                    supportTransparency.Transparency = 0;
            }
            return series;
        }
        static Diagram CreateDiagramBySeriesType(Type seriesType) {
            return (Diagram)Activator.CreateInstance(SeriesTypes[seriesType].DiagramType);
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.ConditionalSortBySummary" Height="300" Width="300" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="FieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Person.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>

    <dxdb:DemoModuleControl>
        <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" ShowDataHeaders="False" ShowFilterHeaders="False" RowTreeWidth="146" VerticalAlignment="Stretch" ShowBorder="False" Loaded="pivotGrid_Loaded">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldMonth" FieldName="OrderDate" Area="ColumnArea" AreaIndex="1" UnboundFieldName="fieldQuarter" GroupInterval="DateMonth" Width="130" Caption="Order Month" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="RowArea" AreaIndex="0" Width="130" Caption="Sales Person" SortByField="{Binding ElementName=fieldDiscount}" SortOrder="Descending" HeaderTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" HeaderListTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" />


                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" Caption="Order Amount" CellFormat="c" />

                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" AreaIndex="0" GroupInterval="DateYear" UnboundFieldName="fieldYear" AllowSortBySummary="False" Caption="Order Year" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" AreaIndex="1" Caption="Quantity" />
                <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" Area="DataArea" AreaIndex="2" Caption="Discount (Avg)" CellFormat="p" SummaryType="Average" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class ConditionalSortBySummary : PivotGridDemoModule {
        public ConditionalSortBySummary() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
        void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BeginUpdate();
            fieldYear.FilterValues.ValuesIncluded = new object[] { 1994 };
            if(fieldSalesPerson.SortByConditions.Count < 1) {
                fieldSalesPerson.SortByConditions.Add(new SortByCondition(fieldYear, 1994));
                fieldSalesPerson.SortByConditions.Add(new SortByCondition(fieldMonth, 8));
            }
            pivotGrid.EndUpdate();
        }
        void pivotGrid_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(FieldArea.ColumnArea, true, false);
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.ContextMenu" Height="300" Width="300" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxb="http://schemas.devexpress.com/winfx/2008/xaml/bars" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>
        <dxb:BarManager Name="barManager">
            <dxb:BarManager.Items>
                <dxb:BarCheckItem Name="ShowColumnGrandTotalHeader" IsChecked="{Binding ElementName=pivotGrid, Path=ShowColumnGrandTotalHeader, Mode=TwoWay}" Content="Show Column Grand Total Header" />
                <dxb:BarCheckItem Name="ShowColumnGrandTotals" IsChecked="{Binding ElementName=pivotGrid, Path=ShowColumnGrandTotals, Mode=TwoWay}" Content="Show Column Grand Totals" />
                <dxb:BarCheckItem Name="ShowColumnTotals" IsChecked="{Binding ElementName=pivotGrid, Path=ShowColumnTotals, Mode=TwoWay}" Content="Show Column Totals" />

                <dxb:BarCheckItem Name="ShowRowGrandTotalHeader" IsChecked="{Binding ElementName=pivotGrid, Path=ShowRowGrandTotalHeader, Mode=TwoWay}" Content="Show Row Grand Total Header" />
                <dxb:BarCheckItem Name="ShowRowGrandTotals" IsChecked="{Binding ElementName=pivotGrid, Path=ShowRowGrandTotals, Mode=TwoWay}" Content="Show Row Grand Totals" />
                <dxb:BarCheckItem Name="ShowRowTotals" IsChecked="{Binding ElementName=pivotGrid, Path=ShowRowTotals, Mode=TwoWay}" Content="Show Row Totals" />

                <dxb:BarCheckItem Name="ShowGrandTotalsForSingleValues" IsChecked="{Binding ElementName=pivotGrid, Path=ShowGrandTotalsForSingleValues, Mode=TwoWay}" Content="Show Grand Totals For Single Values" />
                <dxb:BarCheckItem Name="ShowTotalsForSingleValues" IsChecked="{Binding ElementName=pivotGrid, Path=ShowTotalsForSingleValues, Mode=TwoWay}" Content="Show Totals For Single Values" />

            </dxb:BarManager.Items>
            <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" CustomSummary="OnPivotGridCustomSummary" PopupMenuShowing="OnPivotGridShowMenu" RowTreeWidth="305" ShowBorder="False" VerticalAlignment="Stretch" ShowColumnGrandTotals="False" ShowFilterHeaders="False" DataFieldAreaIndex="2" DataFieldArea="ColumnArea" DataFieldCaption="Data" SummaryDataSourceFieldNaming="FieldName" Loaded="pivotGrid_Loaded">
                <dxpg:PivotGridControl.Fields>
                    <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" AreaIndex="1" Width="130" Caption="Product Name" />
                    <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" AreaIndex="0" Width="130" Caption="Category Name" />
                    <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" AreaIndex="0" Width="80" Caption="Year" />
                    <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" SummaryType="Sum" ShowSummaryTypeName="True" AreaIndex="1" Area="DataArea" Width="70" Caption="Quantity" />
                    <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" SummaryType="Average" ShowSummaryTypeName="True" AreaIndex="2" Area="DataArea" Width="70" Caption="Discount" CellFormat="p" ValueFormat="p" />
                    <dxpg:PivotGridField x:Name="fieldUnitPrice" FieldName="UnitPrice" SummaryType="Max" ShowSummaryTypeName="True" AreaIndex="0" Area="DataArea" Width="130" Caption="Unit Price" />
                </dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridControl.HeaderAreaMenuCustomizations>
                    <dxb:BarItemLinkSeparator />
                    <dxb:BarSubItem Content="Totals">
                        <dxb:BarSubItem.ItemLinks>
                            <dxb:BarCheckItemLink BarItemName="ShowColumnGrandTotalHeader" />
                            <dxb:BarCheckItemLink BarItemName="ShowColumnGrandTotals" />
                            <dxb:BarCheckItemLink BarItemName="ShowColumnTotals" />
                            <dxb:BarItemLinkSeparator x:Name="Separator1" />
                            <dxb:BarCheckItemLink BarItemName="ShowRowGrandTotalHeader" />
                            <dxb:BarCheckItemLink BarItemName="ShowRowGrandTotals" />
                            <dxb:BarCheckItemLink BarItemName="ShowRowTotals" />
                            <dxb:BarItemLinkSeparator x:Name="Separator2" />
                            <dxb:BarCheckItemLink BarItemName="ShowGrandTotalsForSingleValues" />
                            <dxb:BarCheckItemLink BarItemName="ShowTotalsForSingleValues" />
                        </dxb:BarSubItem.ItemLinks>
                    </dxb:BarSubItem>
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemShowPrefilter" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemHidePrefilter" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemRefreshData" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemShowFieldList" />
                </dxpg:PivotGridControl.HeaderAreaMenuCustomizations>
                <dxpg:PivotGridControl.HeaderMenuCustomizations>
                    <dxb:BarItemLinkSeparator />
                    <dxb:BarSubItem Content="Totals">
                        <dxb:BarSubItem.ItemLinks>
                            <dxb:BarCheckItemLink BarItemName="ShowColumnGrandTotalHeader" />
                            <dxb:BarCheckItemLink BarItemName="ShowColumnGrandTotals" />
                            <dxb:BarCheckItemLink BarItemName="ShowColumnTotals" />
                            <dxb:BarItemLinkSeparator x:Name="Separator3" />
                            <dxb:BarCheckItemLink BarItemName="ShowRowGrandTotalHeader" />
                            <dxb:BarCheckItemLink BarItemName="ShowRowGrandTotals" />
                            <dxb:BarCheckItemLink BarItemName="ShowRowTotals" />
                            <dxb:BarItemLinkSeparator x:Name="Separator4" />
                            <dxb:BarCheckItemLink BarItemName="ShowGrandTotalsForSingleValues" />
                            <dxb:BarCheckItemLink BarItemName="ShowTotalsForSingleValues" />
                        </dxb:BarSubItem.ItemLinks>
                    </dxb:BarSubItem>
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemShowPrefilter" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemHidePrefilter" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemRefreshData" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemShowFieldList" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemHideField" />
                    <dxb:RemoveBarItemAndLinkAction ItemName="ItemFieldOrder" />
                </dxpg:PivotGridControl.HeaderMenuCustomizations>
            </dxpg:PivotGridControl>
        </dxb:BarManager>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using System.Windows.Data;
using System.Windows.Media;
using System.Windows.Markup;
using System.Windows.Controls;
using DevExpress.Data.Mask;
using DevExpress.Xpf.Bars;
using DevExpress.Xpf.Core.Commands;

namespace PivotGridDemo.PivotGrid {
    public partial class ContextMenu: PivotGridDemoModule {
        public ContextMenu() {
            InitializeComponent();
            pivotGrid.BeginUpdate();
            pivotGrid.DataSource = NWindData.SalesPerson;
            pivotGrid.EndUpdate();
        }
        void pivotGrid_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(FieldArea.ColumnArea, true, false);
        }

        void OnPivotGridCustomSummary(object sender, PivotCustomSummaryEventArgs e) {
            e.CustomValue = e.SummaryValue.Summary;
        }

        void OnPivotGridShowMenu(object sender, PopupMenuShowingEventArgs e) {
            if(e.MenuType.Equals(PivotGridMenuType.Header) && e.GetFieldInfo().Field.Area == FieldArea.DataArea) {
                e.Customizations.Add(new BarItemLinkSeparator());
                BarSubItem item = new BarSubItem() { Content = "Summary Type" };
                e.Customizations.Add(item);
                Array arr = EnumHelper.GetValues(typeof(FieldSummaryType));
                foreach(FieldSummaryType type in arr)
                  item.ItemLinks.Add(new BarButtonItem() {
                        Name = "item" + type.ToString(),
                        Content = type.ToString(),
                        CommandParameter = new FieldSummaryItem() { Type = type, Field = e.GetFieldInfo().Field },
                        Command = new DelegateCommand<FieldSummaryItem>(SetFieldSummaryType, CanSetFieldSummaryType)
                    });
            }
        }

        void SetFieldSummaryType(FieldSummaryItem item) {
            item.Field.SummaryType = item.Type;
            item.Field.CellFormat = GetFormat(item.Type, item.Field);
            pivotGrid.BestFit(FieldArea.ColumnArea, true, false);
        }

        string GetFormat(FieldSummaryType fieldSummaryType, PivotGridField field) {
            if(field == fieldQuantity)
                return "";
            switch(fieldSummaryType){
                case FieldSummaryType.Average:
                case FieldSummaryType.Sum:
                case FieldSummaryType.Custom:
                case FieldSummaryType.Max:
                case FieldSummaryType.Min:
                    return "c";
                case FieldSummaryType.Count:
                    return "";
                case FieldSummaryType.StdDev:
                case FieldSummaryType.StdDevp:
                case FieldSummaryType.Var:
                case FieldSummaryType.Varp:
                    return "p";
            }
            return string.Empty;
        }

        bool CanSetFieldSummaryType(FieldSummaryItem item) { return item.Field.SummaryType != item.Type; }
    }

    public class FieldSummaryItem {

        public FieldSummaryItem() { }

        public PivotGridField Field { get; set; }
        public FieldSummaryType Type { get; set; }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.CustomAppearance" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxpgi="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid/internal">
    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="SalesPersonFieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Person.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
            <DataTemplate x:Key="OrderFieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Order.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>

        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>
    <dxdb:DemoModuleControl>
        <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" dx:ThemeManager.ThemeName="Office2007Silver" x:Name="pivotGrid" FieldListStyle="Excel2007" SelectMode="None" RowTreeWidth="187" Background="#505050" ShowBorder="False" FocusedCell="4,10" CellBackground="#414141" CellTotalBackground="#414146" CellForeground="#B4B4B4" CellTotalForeground="#B4B4B4" CellSelectedBackground="#5A5A5A" CellTotalSelectedBackground="#5A5A5F" CellSelectedForeground="#DCDCDC" CellTotalSelectedForeground="#DCDCDC" ValueBackground="#373737" ValueTotalBackground="#3F3F3F" ValueForeground="#B4B4B4" ValueTotalForeground="#B4B4B4" ValueSelectedBackground="#575757" ValueTotalSelectedBackground="#3F3F44" ValueSelectedForeground="#DCDCDC" ValueTotalSelectedForeground="#DCDCDC" CustomCellAppearance="OnCustomCellAppearance" CustomValueAppearance="OnCustomValueAppearance" ShowFilterHeaders="False" ShowDataHeaders="False" ShowColumnHeaders="False" ShowRowHeaders="False" ShowColumnGrandTotals="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldOrderYear" FieldName="OrderDate" Area="FilterArea" AreaIndex="0" GroupInterval="DateYear" Caption="Order Year" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldOrderQuarter" FieldName="OrderDate" Area="RowArea" AreaIndex="0" GroupInterval="DateQuarter" Caption="Order Quarter" ValueFormat="Quarter {0}" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldCategoryName" FieldName="CategoryName" Area="RowArea" AreaIndex="0" Caption="Category Name" />
                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" AreaIndex="1" Caption="Product Name" />
                <dxpg:PivotGridField x:Name="fieldCountry" FieldName="Country" Area="ColumnArea" AreaIndex="0" Caption="Country" Visible="False" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="ColumnArea" AreaIndex="1" Caption="Sales Person" HeaderTemplate="{StaticResource SalesPersonFieldHeaderTemplate}" HeaderListTemplate="{StaticResource SalesPersonFieldHeaderTemplate}" />

                <dxpg:PivotGridField x:Name="fieldOrderID" FieldName="OrderID" Area="FilterArea" Caption="Order ID" Visible="False" HeaderTemplate="{StaticResource OrderFieldHeaderTemplate}" HeaderListTemplate="{StaticResource OrderFieldHeaderTemplate}" />

                <dxpg:PivotGridField x:Name="fieldOrderAmount" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" CellFormat="c" Caption="Order Amount" />

                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Caption="Quantity" Visible="False" />
            </dxpg:PivotGridControl.Fields>
            <dxpg:PivotGridControl.FocusedCellBorderTemplate>
                <ControlTemplate>
                    <Rectangle StrokeDashArray="2 2" Stroke="#DCDCDC" StrokeThickness="1" />
                </ControlTemplate>
            </dxpg:PivotGridControl.FocusedCellBorderTemplate>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!ausing System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Core;
using System.Windows.Markup;
using System.Windows.Data;
using DevExpress.Xpf.Editors.Helpers;
using System.Windows.Media;

namespace PivotGridDemo.PivotGrid {
    public partial class CustomAppearance : PivotGridDemoModule {
        public CustomAppearance() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
            pivotGrid.BeginUpdate();
            fieldCategoryName.FilterValues.FilterType = FieldFilterType.Included;
            fieldCategoryName.FilterValues.Add("Grains/Cereals");
            fieldCategoryName.FilterValues.Add("Meat/Poultry");
            fieldCategoryName.FilterValues.Add("Produce");
            fieldSalesPerson.FilterValues.Add("Robert King");
            fieldSalesPerson.FilterValues.Add("Steven Buchanan");
            pivotGrid.EndUpdate();
            pivotGrid.FocusedCellChanged += new RoutedEventHandler(OnFocusedCellChanged);
            Loaded += new RoutedEventHandler(OnModuleLoaded);
        }

        public override bool AllowSwitchingTheme { get { return false; } }

        void OnModuleLoaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(fieldSalesPerson, true, false);
        }

        void OnFocusedCellChanged(object sender, RoutedEventArgs e) {
            pivotGrid.RaiseEvent(new PivotBrushChangedEventArgs(PivotGridControl.BrushChangedEvent, pivotGrid, PivotBrushType.CellBrush));
            pivotGrid.RaiseEvent(new PivotBrushChangedEventArgs(PivotGridControl.BrushChangedEvent, pivotGrid, PivotBrushType.ValueBrush));
        }

        void OnCustomCellAppearance(object sender, PivotCustomCellAppearanceEventArgs e) {
            bool columnSelected = e.RowIndex == pivotGrid.FocusedCell.Y;
            bool rowSelected = e.ColumnIndex == pivotGrid.FocusedCell.X;
            if(columnSelected && !rowSelected || !columnSelected && rowSelected) {
                CellMode mode = CellMode.Selected;
                if(e.RowValueType > 0 || e.ColumnValueType > 0)
                    mode = mode | CellMode.Tolal;
                e.Background = GetActualCellBackgroundBrush(mode);
                e.Foreground = GetActualCellForegroundBrush(mode);
            }
        }

        void OnCustomValueAppearance(object sender, PivotCustomValueAppearanceEventArgs e) {
            if(e.MaxIndex != e.MinIndex)
                return;
            if(e.IsColumn && e.MinIndex == pivotGrid.FocusedCell.X ||
                !e.IsColumn && e.MinIndex == pivotGrid.FocusedCell.Y)
                e.Background = pivotGrid.ValueSelectedBackground;
        }

        Brush GetActualCellForegroundBrush(CellMode actualMode) {
            switch(actualMode) {
                case CellMode.None:
                    return pivotGrid.CellForeground;
                case CellMode.Selected:
                    return pivotGrid.CellSelectedForeground;
                case CellMode.Tolal:
                    return pivotGrid.CellTotalForeground;
                case CellMode.TotalSelected:
                    return pivotGrid.CellTotalSelectedForeground;
                default:
                    throw new Exception("CellMode");
            }
        }

        Brush GetActualCellBackgroundBrush(CellMode actualMode) {
            switch(actualMode) {
                case CellMode.None:
                    return pivotGrid.CellBackground;
                case CellMode.Selected:
                    return pivotGrid.CellSelectedBackground;
                case CellMode.Tolal:
                    return pivotGrid.CellTotalBackground;
                case CellMode.TotalSelected:
                    return pivotGrid.CellTotalSelectedBackground;
                default:
                    throw new Exception("CellMode");
            }
        }

        public enum CellMode {
            None = 0,
            Tolal = 1,
            Selected = 2,
            TotalSelected = Tolal | Selected,
        }
    }
}!C<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.CustomerReports" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Customer Reports">
                    <dxe:ListBoxEdit x:Name="reportsList" ShowBorder="False" SelectedIndex="0" Background="{x:Null}" SelectedIndexChanged="ListBoxEdit_SelectionChanged">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <sys:String>Customers</sys:String>
                            <sys:String>Products (filtering)</sys:String>
                            <sys:String>Top 2 Products</sys:String>
                            <sys:String>Top 10 Customers</sys:String>
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Products Filtering" Name="gbxFiltering" Margin="0,5,0,0">
                    <StackPanel>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="2*" />
                                <ColumnDefinition Width="2*" />
                            </Grid.ColumnDefinitions>
                            <Grid.RowDefinitions>
                                <RowDefinition />
                                <RowDefinition />
                            </Grid.RowDefinitions>
                            <TextBlock Text="Year:" VerticalAlignment="Center" Margin="0,0,0,5" />
                            <dxe:ComboBoxEdit Grid.Column="1" Name="cbeYear" Width="80" SelectedIndexChanged="cbeYear_SelectedIndexChanged" IsTextEditable="False" Margin="0,0,0,5" />
                            <TextBlock Grid.Row="1" Text="Quarter:" Margin="0,5,0,5" HorizontalAlignment="Left" VerticalAlignment="Center" />
                            <dxe:ComboBoxEdit Grid.Row="1" Grid.Column="1" Name="cbeQuarter" Width="80" SelectedIndexChanged="cbeQuarter_SelectedIndexChanged" IsTextEditable="False" Margin="0,5,0,5" />
                        </Grid>
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" DataFieldWidth="90" RowTreeWidth="225" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Width="80" Caption="Order Year" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" ValueFormat="Qtr {0}" Width="90" Caption="Order Quarter" />
                <dxpg:PivotGridField x:Name="fieldCompanyName" FieldName="CompanyName" Area="RowArea" Width="150" Caption="Customer" />
                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" Width="120" Caption="Product" />
                <dxpg:PivotGridField x:Name="fieldProductAmount" FieldName="ProductAmount" Area="DataArea" Width="150" Caption="Product Amount" CellFormat="c" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!Ousing System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Core;

namespace PivotGridDemo.PivotGrid {
    public partial class CustomerReports : PivotGridDemoModule {
        const string allString = "(All)";

        public CustomerReports() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.CustomerReports;
            ResetValues();
        }
        private void ListBoxEdit_SelectionChanged(object sender, RoutedEventArgs e) {
            pivotGrid.BeginUpdate();
            switch(reportsList.SelectedIndex) {
                case 0:
                    ResetValues();
                    break;
                case 1:
                    SetYearFilter();
                    break;
                case 2:
                    SetTopProducts();
                    break;
                case 3:
                    SetTopCustomers();
                    break;
            }
            pivotGrid.EndUpdateAsync();
        }
        private void cbeYear_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            UpdateYearFilter();
        }
        private void cbeQuarter_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            UpdateQuarterFilter();
        }

        void SetTopCustomers() {
            ResetValues();
            fieldProductName.Area = FieldArea.FilterArea;
            fieldYear.Area = fieldQuarter.Area = FieldArea.FilterArea;
            fieldCompanyName.SortByField = fieldProductAmount;
            fieldCompanyName.SortOrder = FieldSortOrder.Descending;
            fieldCompanyName.TopValueCount = 10;
        }
        void SetTopProducts() {
            ResetValues();
            fieldYear.Area = fieldQuarter.Area = FieldArea.FilterArea;
            fieldProductName.SortByField = fieldProductAmount;
            fieldProductName.SortOrder = FieldSortOrder.Descending;
            fieldProductName.TopValueCount = 2;
        }
        void SetYearFilter() {
            ResetValues();
            if(cbeYear.Items.Count == 0) {
                cbeQuarter.Items.Add(allString);
                foreach(object obj in fieldYear.GetUniqueValues()) {
                    cbeYear.Items.Add(obj);
                }
                cbeYear.SelectedItem = cbeYear.Items[0];
                foreach(object obj in fieldQuarter.GetUniqueValues()) {
                    cbeQuarter.Items.Add(obj);
                }
                cbeQuarter.SelectedItem = cbeQuarter.Items[0];
                cbeYear.SelectedItem = cbeYear.Items[0];
            }
            gbxFiltering.Visibility = System.Windows.Visibility.Visible;
            UpdateYearFilter();
            UpdateQuarterFilter();
        }
        void ResetValues() {
            if (gbxFiltering != null)
            gbxFiltering.Visibility = System.Windows.Visibility.Collapsed;
            if(fieldQuarter != null) {
                fieldQuarter.FilterValues.Clear();
                fieldQuarter.FilterValues.FilterType = FieldFilterType.Excluded;
                fieldQuarter.Area = FieldArea.ColumnArea;
            }
            if(fieldYear != null) {
                fieldYear.FilterValues.Clear();
                fieldYear.FilterValues.FilterType = FieldFilterType.Excluded;
                fieldYear.Area = FieldArea.ColumnArea;
                fieldYear.AreaIndex = 0;
            }
            if(fieldProductName != null) {
                fieldProductName.SortOrder = FieldSortOrder.Ascending;
                fieldProductName.SortByField = null;
                fieldProductName.TopValueCount = 0;
                fieldProductName.Area = FieldArea.RowArea;
                fieldProductName.AreaIndex = 1;
            }
            if(fieldCompanyName != null) {
                fieldCompanyName.SortByField = null;
                fieldCompanyName.TopValueCount = 0;
                fieldCompanyName.SortOrder = FieldSortOrder.Ascending;
            }
        }
        void UpdateYearFilter() {
            fieldYear.FilterValues.FilterType = FieldFilterType.Included;
            fieldYear.FilterValues.Clear();
            fieldYear.FilterValues.Add(cbeYear.SelectedItem);
        }
        void UpdateQuarterFilter() {
            fieldQuarter.FilterValues.Clear();
            fieldQuarter.FilterValues.FilterType = FieldFilterType.Excluded;
            if(cbeQuarter.SelectedIndex == 0) return;
            fieldQuarter.FilterValues.FilterType = FieldFilterType.Included;
            fieldQuarter.FilterValues.Add(cbeQuarter.SelectedItem);
        }
    }
}!�	<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.CustomGroupInterval" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" Width="260">
                <dx:GroupFrame Header="Custom Group Settings" Margin="0,0,0,4">
                    <StackPanel>
                        <TextBlock VerticalAlignment="Center" Margin="0,4,0,4">Select Group Interval:</TextBlock>
                        <dxe:ComboBoxEdit Name="cbGroup" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,4,0,4" SelectedIndexChanged="cbGroup_SelectedIndexChanged" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" RowTreeWidth="215" CustomGroupInterval="pivotGrid_CustomGroupInterval" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="pivotGridField1" FieldName="ProductName" UnboundFieldName="pivotGridField1" Area="RowArea" AreaIndex="0" Caption="Product Group" />
                <dxpg:PivotGridField x:Name="pivotGridField2" FieldName="ProductName" Area="RowArea" AreaIndex="1" Caption="Product" />
                <dxpg:PivotGridField x:Name="pivotGridField3" FieldName="ProductSales" Area="DataArea" AreaIndex="0" Caption="Sales" />
                <dxpg:PivotGridField x:Name="pivotGridField4" FieldName="ShippedDate" Area="ColumnArea" AreaIndex="0" Caption="Year - Quarter" Visible="False" />
                <dxpg:PivotGridField x:Name="pivotGridField5" FieldName="ShippedDate" Area="ColumnArea" AreaIndex="0" Caption="Shipped Date" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!}
using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Core;

namespace PivotGridDemo.PivotGrid {
    public partial class CustomGroupInterval : PivotGridDemoModule {
        int selectedDemo;

        public CustomGroupInterval() {
            selectedDemo = 0;
            InitializeComponent();
            pivotGrid.DataSource = NWindData.ProductReports;
            cbGroup.Items.Add(new ComboBoxEditItem() { Content = "Group Products by First Characters", Tag = 0 });
            cbGroup.Items.Add(new ComboBoxEditItem() { Content = "Group Sales by Year and Quarter", Tag = 1 });
            cbGroup.SelectedIndex = 0;
        }

        int SelectedDemo { get { return selectedDemo; } }

        void cbGroup_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            selectedDemo = (int)((ComboBoxEditItem)cbGroup.SelectedItem).Tag;
            pivotGrid.BeginUpdate();
            switch(SelectedDemo) {
                case 0:
                    pivotGrid.Fields[0].Visible = true;
                    pivotGrid.Fields[0].Caption = "Product Group";
                    pivotGrid.Fields[0].GroupInterval = FieldGroupInterval.Custom;

                    pivotGrid.Fields[4].Caption = "Year";
                    pivotGrid.Fields[4].GroupInterval = FieldGroupInterval.DateYear;

                    pivotGrid.Fields[3].Visible = false;
                    pivotGrid.Fields[3].GroupInterval = FieldGroupInterval.Default;
                    break;
                case 1:
                    pivotGrid.Fields[3].Visible = true;
                    pivotGrid.Fields[3].Caption = "Year - Quarter";
                    pivotGrid.Fields[3].GroupInterval = FieldGroupInterval.Custom;
                    pivotGrid.Fields[3].AreaIndex = 0;

                    pivotGrid.Fields[4].Caption = "Shipped Date";
                    pivotGrid.Fields[4].GroupInterval = FieldGroupInterval.Date;
                    pivotGrid.Fields[4].AreaIndex = 1;

                    pivotGrid.Fields[0].Visible = false;
                    pivotGrid.Fields[0].GroupInterval = FieldGroupInterval.Default;
                    break;
            }
            pivotGrid.EndUpdate();
            pivotGrid.CollapseAll();
        }
        void pivotGrid_CustomGroupInterval(object sender, PivotCustomGroupIntervalEventArgs e) {
            switch(SelectedDemo) {
                case 0:
                    if(!object.ReferenceEquals(e.Field, pivotGrid.Fields[0])) return;
                    if(Convert.ToChar(e.Value.ToString()[0]) < 'F') {
                        e.GroupValue = "A-E";
                        return;
                    }
                    if(Convert.ToChar(e.Value.ToString()[0]) > 'E' && Convert.ToChar(e.Value.ToString()[0]) < 'T') {
                        e.GroupValue = "F-S";
                        return;
                    }
                    if(Convert.ToChar(e.Value.ToString()[0]) > 'S')
                        e.GroupValue = "T-Z";
                    break;
                case 1:
                    if(!object.ReferenceEquals(e.Field, pivotGrid.Fields[3])) return;
                    e.GroupValue = ((DateTime)e.Value).Year + " - " + ((((DateTime)e.Value).Month - 1) / 3 + 1).ToString();
                    break;
            }
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.CustomLayout" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdo="http://schemas.devexpress.com/winfx/2008/xaml/docking" xmlns:dxlc="http://schemas.devexpress.com/winfx/2008/xaml/layoutcontrol" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>
        <dxlc:LayoutControl x:Name="layoutItems" VerticalAlignment="Stretch" Orientation="Vertical">
            <dxlc:LayoutGroup>
                <dxlc:LayoutGroup Orientation="Vertical" VerticalAlignment="Stretch" Width="180">
                    <dxlc:LayoutGroup View="GroupBox" Header="Hidden Fields" IsCollapsible="True" Padding="0" ItemSpace="0">
                        <dxlc:LayoutGroup.HeaderTemplate>
                            <DataTemplate>
                                <Grid UseLayoutRounding="True" Height="16" Margin="-6,0,0,0">
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="Auto" />
                                        <ColumnDefinition Width="*" />
                                    </Grid.ColumnDefinitions>
                                    <Image VerticalAlignment="Center" Source="{local:PivotImage ImageName=Customization2007HiddenFields}" Width="16" Height="16">

                                    </Image>
                                    <dxe:TextEdit Grid.Column="1" EditMode="InplaceInactive" VerticalAlignment="Center" HorizontalAlignment="Left" EditValue="Hidden Fields" />
                                </Grid>
                            </DataTemplate>
                        </dxlc:LayoutGroup.HeaderTemplate>
                        <dxlc:LayoutGroup.GroupBoxStyle>
                            <Style TargetType="dxlc:GroupBox">
                                <Setter Property="Padding" Value="0" />
                            </Style>
                        </dxlc:LayoutGroup.GroupBoxStyle>

                        <dxpg:PivotFieldListControl Area="All" Owner="{Binding ElementName=pivotGrid}" Orientation="Auto" ShowBorder="False" Background="#0fff" EmptyTextVisibility="Collapsed" />
                    </dxlc:LayoutGroup>
                    <dxlc:LayoutGroup View="GroupBox" Header="Filter Fields" IsCollapsible="True" IsCollapsed="True">
                        <dxlc:LayoutGroup.HeaderTemplate>
                            <DataTemplate>
                                <Grid UseLayoutRounding="True" Height="16" Margin="-6,0,0,0">
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="Auto" />
                                        <ColumnDefinition Width="*" />
                                    </Grid.ColumnDefinitions>
                                    <Image VerticalAlignment="Center" Source="{local:PivotImage ImageName=Customization2007Filter}" Width="16" Height="16">

                                    </Image>
                                    <dxe:TextEdit Grid.Column="1" EditMode="InplaceInactive" VerticalAlignment="Center" HorizontalAlignment="Left" EditValue="Filter Area" />
                                </Grid>
                            </DataTemplate>
                        </dxlc:LayoutGroup.HeaderTemplate>
                        <dxlc:LayoutGroup.GroupBoxStyle>
                            <Style TargetType="dxlc:GroupBox">
                                <Setter Property="Padding" Value="0" />
                            </Style>
                        </dxlc:LayoutGroup.GroupBoxStyle>
                        <dxpg:PivotFieldListControl Area="FilterArea" Owner="{Binding ElementName=pivotGrid}" Orientation="Auto" ShowBorder="False" Background="#0fff" EmptyTextVisibility="Collapsed" />
                    </dxlc:LayoutGroup>
                </dxlc:LayoutGroup>
                <dxlc:LayoutGroup Orientation="Vertical" VerticalAlignment="Stretch">
                    <dxlc:LayoutItem>
                        <dxlc:LayoutGroup Orientation="Vertical">
                            <dxlc:GroupBox TitleVisibility="Collapsed" Padding="5,0,5,0">
                                <dxpg:PivotFieldListControl Area="ColumnArea" Owner="{Binding ElementName=pivotGrid}" Orientation="Auto" ShowBorder="False" LabelVisibility="Visible" Background="#0fff">
                                </dxpg:PivotFieldListControl>
                            </dxlc:GroupBox>
                            <dxlc:GroupBox TitleVisibility="Collapsed" Padding="5,0,5,0">
                                <dxpg:PivotFieldListControl Area="RowArea" Owner="{Binding ElementName=pivotGrid}" Orientation="Auto" ShowBorder="False" LabelVisibility="Visible" Background="#0fff" />
                            </dxlc:GroupBox>
                            <dxlc:GroupBox TitleVisibility="Collapsed" Padding="5,0,5,0">
                                <dxpg:PivotFieldListControl Area="DataArea" Owner="{Binding ElementName=pivotGrid}" Orientation="Auto" ShowBorder="False" LabelVisibility="Visible" Background="#0fff" />
                            </dxlc:GroupBox>
                        </dxlc:LayoutGroup>
                    </dxlc:LayoutItem>
                    <dxlc:LayoutItem VerticalAlignment="Stretch">
                        <dxlc:GroupBox TitleVisibility="Collapsed" Padding="0">
                            <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" RowTreeWidth="200" ShowBorder="False" ShowFilterHeaders="False" ShowDataHeaders="False" ShowColumnHeaders="False" ShowRowHeaders="False">
                                <dxpg:PivotGridControl.Fields>
                                    <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category" />
                                    <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product" Visible="False" />
                                    <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="80" />
                                    <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" Width="80" ValueFormat="Quarter {0}" Visible="False" />
                                    <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Width="100" Caption="Quantity" CellFormat="f2" />

                                    <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Width="100" Caption="Extended Price" />

                                </dxpg:PivotGridControl.Fields>
                            </dxpg:PivotGridControl>
                        </dxlc:GroupBox>
                    </dxlc:LayoutItem>

                </dxlc:LayoutGroup>
            </dxlc:LayoutGroup>
        </dxlc:LayoutControl>

    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.Xpf.DemoBase;
using System.Windows;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.PivotGrid;
using System.Collections.Generic;
using System.Windows.Media.Imaging;
using System.Reflection;

namespace PivotGridDemo.PivotGrid {
    public partial class CustomLayout : PivotGridDemoModule {

        public CustomLayout() {
            InitializeComponent();
        }

        private void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
    }

    public class PivotImageExtension : MarkupExtension {
        static Dictionary<string, BitmapImage> images = new Dictionary<string, BitmapImage>();
        static BitmapImage LoadImage(string imageName) {
            string resourcePath = string.Format("DevExpress.Xpf.PivotGrid.Images.{0}.png", imageName);
            Assembly asm = typeof(PivotGridControl).Assembly;
            return DevExpress.Xpf.Core.Native.ImageHelper.CreateImageFromEmbeddedResource(asm, resourcePath);
        }
        public static BitmapImage GetImage(string imageName) {
            BitmapImage image = null;
            if(!images.TryGetValue(imageName, out image)) {
                image = LoadImage(imageName);
                images.Add(imageName, image);
            }
            return image;
        }
        public string ImageName { get; set; }

        public PivotImageExtension() { }

        public PivotImageExtension(string imageName) {
            ImageName = imageName;
        }

        public override object ProvideValue(IServiceProvider serviceProvider) {
            return GetImage(ImageName);
        }
    }
}!;<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.Dashboard" Height="300" Width="300" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dxga="http://schemas.devexpress.com/winfx/2008/xaml/gauges">
    <local:PivotGridDemoModule.Resources>
        <Style TargetType="local:SimpleGaugeControl">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="local:SimpleGaugeControl">
                        <Grid>
                            <Grid.RowDefinitions>
                                <RowDefinition Height="Auto" />
                                <RowDefinition Height="*" />
                            </Grid.RowDefinitions>
                            <dxga:CircularGaugeControl HorizontalAlignment="Center" Width="216" Height="155">
                                <dxga:CircularGaugeControl.Model>
                                    <dxga:CircularClassicModel />
                                </dxga:CircularGaugeControl.Model>
                                <dxga:CircularGaugeControl.Scales>
                                    <dxga:ArcScale StartValue="{TemplateBinding Min}" EndValue="{TemplateBinding Max}" MajorIntervalCount="2" ShowMinorTickmarks="true" StartAngle="-200" EndAngle="20">
                                        <dxga:ArcScale.LabelOptions>
                                            <dxga:ArcScaleLabelOptions FormatString="{}{0}" Orientation="LeftToRight" />
                                        </dxga:ArcScale.LabelOptions>
                                        <dxga:ArcScale.Needles>
                                            <dxga:ArcScaleNeedle Value="{Binding Value, RelativeSource={RelativeSource TemplatedParent}}" />
                                        </dxga:ArcScale.Needles>
                                        <dxga:ArcScale.Layers>
                                            <dxga:ArcScaleLayer />
                                        </dxga:ArcScale.Layers>
                                    </dxga:ArcScale>
                                </dxga:CircularGaugeControl.Scales>
                            </dxga:CircularGaugeControl>
                            <Viewbox Grid.Row="1" Width="80" Height="15">

                                <ContentControl FontWeight="ExtraBold" Name="PART_Text" />

                            </Viewbox>
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </local:PivotGridDemoModule.Resources>
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Report">
                    <dxe:ListBoxEdit x:Name="dashboardList" ShowBorder="False" SelectedIndex="0" Background="{x:Null}" SelectedIndexChanged="ListBoxEdit_SelectionChanged">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <sys:String>Complete Report</sys:String>
                            <sys:String>Year-by-Year Comparison</sys:String>
                            <sys:String>Groups Comparison</sys:String>
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <Grid Margin="12">
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="*" />
            </Grid.ColumnDefinitions>
            <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" Grid.Row="0" Grid.ColumnSpan="3" GridLayout="pivotGrid_GridLayout" ShowColumnHeaders="False" ShowDataHeaders="False" ShowFilterHeaders="False" ShowRowHeaders="False" RowTreeWidth="202">
                <dxpg:PivotGridControl.Fields>
                    <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category" />
                    <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product" />
                    <dxpg:PivotGridField x:Name="fieldSales" FieldName="ProductSales" Area="DataArea" Caption="Sales" AllowedAreas="DataArea" />
                    <dxpg:PivotGridField x:Name="fieldYear" FieldName="ShippedDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" />
                    <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="ShippedDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" />
                </dxpg:PivotGridControl.Fields>
            </dxpg:PivotGridControl>

            <StackPanel Orientation="Vertical" Grid.Column="0" Grid.Row="1" Margin="15,7,0,5" HorizontalAlignment="Center">
                <TextBlock TextWrapping="Wrap" Height="49" Margin="0,0,0,4" FontSize="18" TextAlignment="Center" FontWeight="Bold" HorizontalAlignment="Center">Average<LineBreak />Transaction Value</TextBlock>
                <local:SimpleGaugeControl x:Name="avgTransGauge" ValueStringFormat="c" HorizontalAlignment="Center" />
            </StackPanel>

            <StackPanel Orientation="Vertical" Grid.Column="1" Grid.Row="1" Margin="0,7,0,5" HorizontalAlignment="Center">
                <TextBlock TextWrapping="Wrap" Height="49" Margin="0,0,0,4" TextAlignment="Center" FontSize="18" FontWeight="Bold" HorizontalAlignment="Center">Sales Compared<LineBreak />to Last Year</TextBlock>
                <dx:SimplePanel>
                    <local:SimpleGaugeControl x:Name="salesToLastYearGauge" ValueStringFormat="f2" HorizontalAlignment="Center" />
                    <TextBlock Margin="0,45,0,0" x:Name="salesToLastYearNA" TextAlignment="Center" HorizontalAlignment="Center" VerticalAlignment="Center">Not available.</TextBlock>
                </dx:SimplePanel>
            </StackPanel>

            <StackPanel Orientation="Vertical" Grid.Column="2" Grid.Row="1" Margin="0,7,15,5" HorizontalAlignment="Center">
                <TextBlock FontSize="18" TextWrapping="Wrap" Height="49" Margin="0,0,0,4" TextAlignment="Center" FontWeight="Bold" HorizontalAlignment="Center">Sales<LineBreak />to Target</TextBlock>
                <local:SimpleGaugeControl x:Name="salesToTargetGauge" ValueStringFormat="f2" HorizontalAlignment="Center" />
            </StackPanel>

        </Grid>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Linq;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Data.PivotGrid;
using DevExpress.Xpf.Core;
using System.Windows.Controls;
using DevExpress.Xpf.Core.WPFCompatibility;

namespace PivotGridDemo.PivotGrid {
    public partial class Dashboard : PivotGridDemoModule {
        public Dashboard() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.ProductReports;
            SalesTarget = GetSalesTarget();
            UpdateKPIs();
        }

        protected double SalesTarget { get; private set; }

        void pivotGrid_GridLayout(object sender, RoutedEventArgs e) {
            UpdateKPIs();
        }

        void UpdateKPIs() {
            if(avgTransGauge == null) return;

            double avgTrans = GetAverageTransaction();
            avgTransGauge.Min = avgTrans < 400 ? avgTrans - 100 : 400;
            avgTransGauge.Max = (avgTrans > 800 ? (Math.Ceiling(avgTrans / 100) + 1) * 100 : 800);
            avgTransGauge.Value = avgTrans;

            double salesToLastYear = GetSalesToLastYear();
            if(salesToLastYear < 0) {
                salesToLastYearGauge.Visibility = Visibility.Collapsed;
                salesToLastYearNA.Visibility = Visibility.Visible;
            } else {
                salesToLastYearGauge.Visibility = Visibility.Visible;
                salesToLastYearNA.Visibility = Visibility.Collapsed;
                salesToLastYearGauge.Min = salesToLastYear < 1 ? 0 : 1;
                salesToLastYearGauge.Max = salesToLastYear < 1 ? 1 : (salesToLastYear > 2 ? Math.Ceiling(salesToLastYear) + 1 : 2);
                salesToLastYearGauge.Value = salesToLastYear;
            }

            double salesToTarget = GetSalesToTarget();
            salesToTargetGauge.Min = salesToTarget < 1 ? 0 : 1;
            salesToTargetGauge.Max = salesToTarget < 1 ? 1 : (salesToTarget > 2 ? Math.Ceiling(salesToTarget) + 1 : 2);
            salesToTargetGauge.Value = salesToTarget;
        }

        double GetAverageTransaction() {
            PivotDrillDownDataSource ds = pivotGrid.CreateDrillDownDataSource();
            if(ds.RowCount == 0) return 0;
            double transactionSum = 0;
            for(int i = 0; i < ds.RowCount; i++) {
                transactionSum += Convert.ToDouble(ds[i]["ProductSales"]);
            }
            return transactionSum / ds.RowCount;
        }

        double GetSalesToLastYear() {
            if(fieldYear.FilterValues.ValuesIncluded.Count() != 2
                    || pivotGrid.GetFieldCountByArea(FieldArea.DataArea) != 1) return -1;
            object[] years = fieldYear.FilterValues.ValuesIncluded;
            Array.Sort(years);
            double thisYear = Convert.ToDouble(pivotGrid.GetCellValue(new object[] { years[1] }, null)),
                lastYear = Convert.ToDouble(pivotGrid.GetCellValue(new object[] { years[0] }, null));
            return lastYear != 0 ? thisYear / lastYear : 1;
        }

        double GetSalesTarget() {
            if(!fieldYear.FilterValues.IsEmpty)
                throw new ArgumentException("!fieldYear.FilterValues.IsEmpty");
            object[] years = fieldYear.GetUniqueValues();
            Array.Sort(years);
            double year0Sales = Convert.ToDouble(pivotGrid.GetCellValue(new object[] { years[0] }, null));
            if(year0Sales == 0)
                throw new ArgumentException("no sales");
            return year0Sales * Convert.ToDouble(Math.Pow(1.3, years.Length));
        }

        double GetSalesToTarget() {
            if(pivotGrid.GetFieldCountByArea(FieldArea.DataArea) != 1) return 1;
            double sales = Convert.ToDouble(pivotGrid.GetCellValue(new object[0], new object[0]));
            return SalesTarget != 0 ? sales / SalesTarget : 1;
        }

        void ResetField(PivotGridField field, FieldArea area, int areaIndex) {
            field.Area = area;
            field.AreaIndex = areaIndex;
            field.FilterValues.Clear();
            field.FilterValues.FilterType = FieldFilterType.Excluded;
        }

        void Reset() {
            if(pivotGrid == null) return;
            pivotGrid.BeginUpdate();
            ResetField(fieldCategory, FieldArea.RowArea, 0);
            ResetField(fieldProduct, FieldArea.RowArea, 1);
            ResetField(fieldSales, FieldArea.DataArea, 0);
            ResetField(fieldYear, FieldArea.ColumnArea, 0);
            ResetField(fieldQuarter, FieldArea.ColumnArea, 1);
            pivotGrid.EndUpdate();
        }

        private void ListBoxEdit_SelectionChanged(object sender, RoutedEventArgs e) {
            switch(dashboardList.SelectedIndex) {
                case 0:
                    Reset();
                    pivotGrid.ExpandAll();
                    break;
                case 1:
                    pivotGrid.BeginUpdate();
                    Reset();
                    fieldYear.FilterValues.ValuesIncluded = new object[] { 1995, 1996 };
                    pivotGrid.EndUpdate();
                    pivotGrid.ExpandAllRows();
                    pivotGrid.CollapseAllColumns();
                    break;
                case 2:
                    pivotGrid.BeginUpdate();
                    Reset();
                    fieldCategory.FilterValues.ValuesIncluded = new object[] { "Beverages", "Condiments" };
                    pivotGrid.EndUpdate();
                    pivotGrid.ExpandAllColumns();
                    pivotGrid.CollapseAllRows();
                    break;
            }
        }
    }
    public class SimpleGaugeControl : Control {
        public static DependencyProperty MinProperty;
        public static DependencyProperty MaxProperty;
        public static DependencyProperty ValueProperty;
        public static DependencyProperty ValueStringFormatProperty;
        static SimpleGaugeControl() {
            Type ownerType = typeof(SimpleGaugeControl);
            MinProperty = DependencyProperty.Register("Min", typeof(double), ownerType, new PropertyMetadata(0d));
            MaxProperty = DependencyProperty.Register("Max", typeof(double), ownerType, new PropertyMetadata(10d));
            ValueProperty = DependencyProperty.Register("Value", typeof(double), ownerType, new PropertyMetadata(3d, UpdateDisplayText));
            ValueStringFormatProperty = DependencyProperty.Register("ValueStringFormat", typeof(string), ownerType, new PropertyMetadata(string.Empty, UpdateDisplayText));
        }
        static void UpdateDisplayText(DependencyObject d, DependencyPropertyChangedEventArgs e) {
            ((SimpleGaugeControl)d).UpdateDisplayText();
        }
        ContentControl textControl;
        public SimpleGaugeControl() {
            this.SetDefaultStyleKey(typeof(SimpleGaugeControl));
        }
        public double Value {
            get { return (double)GetValue(ValueProperty); }
            set { SetValue(ValueProperty, value); }
        }
        public double Min {
            get { return (double)GetValue(MinProperty); }
            set { SetValue(MinProperty, value); }
        }
        public double Max {
            get { return (double)GetValue(MaxProperty); }
            set { SetValue(MaxProperty, value); }
        }
        public string ValueStringFormat {
            get { return (string)GetValue(ValueStringFormatProperty); }
            set { SetValue(ValueStringFormatProperty, value); }
        }
        public override void OnApplyTemplate() {
            base.OnApplyTemplate();
            textControl = GetTemplateChild("PART_Text") as ContentControl;
            UpdateDisplayText();
        }
        void UpdateDisplayText() {
            if(textControl == null)
                return;
            string format = !string.IsNullOrEmpty(ValueStringFormat) ? "{0:" + ValueStringFormat + "}" : "{0}";
            textControl.Content = string.Format(format, Value);
        }
    }
}!�9<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.FieldsCustomization" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">
    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="SalesPersonFieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Person.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
            <DataTemplate x:Key="OrderFieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Order.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>

    <dxdb:DemoModuleControl>
        <VisualStateManager.VisualStateGroups>
            <VisualStateGroup x:Name="ShowLayoutListGroup">
                <VisualState x:Name="ShowAdvancedOptions">
                    <Storyboard>
                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="advancedOptions" BeginTime="00:00:00" Duration="00:00:00" Storyboard.TargetProperty="(UIElement.Visibility)">
                            <ObjectAnimationUsingKeyFrames.KeyFrames>
                                <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                    <DiscreteObjectKeyFrame.Value>
                                        <Visibility>Visible</Visibility>
                                    </DiscreteObjectKeyFrame.Value>
                                </DiscreteObjectKeyFrame>
                            </ObjectAnimationUsingKeyFrames.KeyFrames>
                        </ObjectAnimationUsingKeyFrames>
                        <DoubleAnimation Storyboard.TargetName="advancedOptions" Storyboard.TargetProperty="Opacity" To="1" BeginTime="00:00:00" Duration="00:00:03" />
                    </Storyboard>
                </VisualState>
                <VisualState x:Name="HideAdvancedOptions">
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetName="advancedOptions" Storyboard.TargetProperty="Opacity" To="0" BeginTime="00:00:00" Duration="00:00:01" />
                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="advancedOptions" BeginTime="00:00:01" Storyboard.TargetProperty="(UIElement.Visibility)">
                            <ObjectAnimationUsingKeyFrames.KeyFrames>
                                <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                    <DiscreteObjectKeyFrame.Value>
                                        <Visibility>Collapsed</Visibility>
                                    </DiscreteObjectKeyFrame.Value>
                                </DiscreteObjectKeyFrame>
                            </ObjectAnimationUsingKeyFrames.KeyFrames>
                        </ObjectAnimationUsingKeyFrames>
                    </Storyboard>
                </VisualState>
            </VisualStateGroup>
        </VisualStateManager.VisualStateGroups>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" Width="240">
                <dx:GroupFrame Header="Customization Settings" Margin="0,0,0,4">
                    <StackPanel>
                        <dxe:CheckEdit IsChecked="{Binding Path=AllowCustomizationForm, ElementName=pivotGrid, Mode=TwoWay}" EditValueChanged="OnAllowCustomizationFormChanged" Content="Allow Field List" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=FieldListIncludeVisibleFields, ElementName=pivotGrid, Mode=TwoWay}" Content="Include Visible Fields In Field List" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=GroupFieldsInFieldList, ElementName=pivotGrid, Mode=TwoWay}" Content="Group Fields In Field List" Margin="0,0,6,4" />
                        <TextBlock VerticalAlignment="Center">Allow Hiding Fields:</TextBlock>
                        <dxe:ComboBoxEdit VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,4,0,0" SelectedItem="{Binding Path=AllowHideFields, ElementName=pivotGrid}">
                            <dxe:ComboBoxEdit.Items>
                                <dxpg:AllowHideFieldsType>Never</dxpg:AllowHideFieldsType>
                                <dxpg:AllowHideFieldsType>Always</dxpg:AllowHideFieldsType>
                                <dxpg:AllowHideFieldsType>WhenFieldListVisible</dxpg:AllowHideFieldsType>
                            </dxe:ComboBoxEdit.Items>
                        </dxe:ComboBoxEdit>
                        <TextBlock VerticalAlignment="Center" Margin="0,4,0,0">Customization Style:</TextBlock>
                        <dxe:ComboBoxEdit x:Name="customizationStyle" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,4,0,0" SelectedIndex="0" SelectedIndexChanged="customizationStyle_SelectedIndexChanged">
                            <dxe:ComboBoxEdit.Items>
                                <dxpg:FieldListStyle>Simple</dxpg:FieldListStyle>
                                <dxpg:FieldListStyle>Excel2007</dxpg:FieldListStyle>
                            </dxe:ComboBoxEdit.Items>
                        </dxe:ComboBoxEdit>
                        <Button x:Name="ShowHideFieldList" Margin="0,8,0,0" Click="ShowHideFieldList_Click" IsEnabled="{Binding Path=AllowCustomizationForm, ElementName=pivotGrid}" Content="{Binding Path=IsFieldListVisible, ElementName=pivotGrid, Converter={local:FieldListVisibleToCommandTextConverter}}" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Advanced Customization Settings" Margin="0,4,0,4" x:Name="advancedOptions" Opacity="0" Visibility="Collapsed">
                    <StackPanel>
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=AllowFilterInFieldList, Mode=TwoWay}" Content="Allow Filtering In Field List" Margin="0,0,4,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=AllowSortInFieldList, Mode=TwoWay}" Content="Allow Sorting In Field List" Margin="0,0,4,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=IsFieldListMenuEnabled, Mode=TwoWay}" Content="Is Field List Menu Enabled" Margin="0,0,4,4" />
                        <StackPanel Orientation="Vertical">
                            <TextBlock VerticalAlignment="Center" Margin="0,4,0,0">Field List Layout:</TextBlock>
                            <dxe:ComboBoxEdit VerticalAlignment="Center" HorizontalAlignment="Stretch" x:Name="currentLayout" EditValueChanged="OnCurrentLayoutEditValueChanged" IsTextEditable="False" Margin="0,4,0,0" SelectedItem="{Binding Path=FieldListLayout, ElementName=pivotGrid, Mode=TwoWay}">
                                <dxe:ComboBoxEdit.Items>
                                    <dxpg:FieldListLayout>StackedDefault</dxpg:FieldListLayout>
                                    <dxpg:FieldListLayout>StackedSideBySide</dxpg:FieldListLayout>
                                    <dxpg:FieldListLayout>TopPanelOnly</dxpg:FieldListLayout>
                                    <dxpg:FieldListLayout>BottomPanelOnly2by2</dxpg:FieldListLayout>
                                    <dxpg:FieldListLayout>BottomPanelOnly1by4</dxpg:FieldListLayout>
                                </dxe:ComboBoxEdit.Items>
                            </dxe:ComboBoxEdit>
                            <TextBlock VerticalAlignment="Center" Margin="0,4,0,0">Allowed Customization Layouts:</TextBlock>
                            <dxe:ComboBoxEdit x:Name="customizationLayouts" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,4,0,0" SelectedIndex="0" EditValueChanged="OnCustomizationLayoutsEditValueChanged" PopupContentSelectionChanged="OnCustomizationLayoutsPopupContentSelectionChanged">
                                <dxe:ComboBoxEdit.Items>
                                    <dxpg:FieldListAllowedLayouts>StackedDefault</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>StackedSideBySide</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>TopPanelOnly</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>BottomPanelOnly2by2</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>BottomPanelOnly1by4</dxpg:FieldListAllowedLayouts>
                                </dxe:ComboBoxEdit.Items>
                                <dxe:ComboBoxEdit.SelectedItems>
                                    <dxpg:FieldListAllowedLayouts>StackedDefault</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>StackedSideBySide</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>TopPanelOnly</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>BottomPanelOnly2by2</dxpg:FieldListAllowedLayouts>
                                    <dxpg:FieldListAllowedLayouts>BottomPanelOnly1by4</dxpg:FieldListAllowedLayouts>
                                </dxe:ComboBoxEdit.SelectedItems>
                                <dxe:ComboBoxEdit.StyleSettings>
                                    <dxe:CheckedComboBoxStyleSettings />
                                </dxe:ComboBoxEdit.StyleSettings>
                            </dxe:ComboBoxEdit>
                        </StackPanel>
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" ShowBorder="False" RowTreeWidth="157">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldOrderYear" FieldName="OrderDate" DisplayFolder="Date" Area="FilterArea" AreaIndex="0" Visible="False" GroupInterval="DateYear" Caption="Year" />
                <dxpg:PivotGridField x:Name="fieldOrderMonth" FieldName="OrderDate" DisplayFolder="Date" Area="FilterArea" Visible="False" AreaIndex="2" GroupInterval="DateMonth" Caption="Month" />
                <dxpg:PivotGridField x:Name="fieldOrderDay" FieldName="OrderDate" DisplayFolder="Date" Area="FilterArea" Visible="False" AreaIndex="3" GroupInterval="DateDay" Caption="Day" />
                <dxpg:PivotGridField x:Name="fieldOrderDayOfWeek" FieldName="OrderDate" DisplayFolder="Date" Area="FilterArea" Visible="False" AreaIndex="4" GroupInterval="DateDayOfWeek" Caption="Day Of Week" />
                <dxpg:PivotGridField x:Name="fieldOrderDayOfYear" FieldName="OrderDate" DisplayFolder="Date" Area="FilterArea" Visible="False" AreaIndex="5" GroupInterval="DateDayOfYear" Caption="Day Of Year" />


                <dxpg:PivotGridField x:Name="fieldOrderAmount" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" CellFormat="c" DisplayFolder="Orders" Caption="Order Amount" />

                <dxpg:PivotGridField x:Name="fieldOrderQuarter" FieldName="OrderDate" DisplayFolder="Date" Area="RowArea" AreaIndex="0" GroupInterval="DateQuarter" Caption="Quarter" ValueFormat="Quarter {0}" />

                <dxpg:PivotGridField x:Name="fieldCategoryName" FieldName="CategoryName" Area="RowArea" AreaIndex="1" Caption="Category" DisplayFolder="Products" />

                <dxpg:PivotGridField x:Name="fieldCountry" FieldName="Country" Area="ColumnArea" AreaIndex="0" Caption="Country" DisplayFolder="Geography" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="ColumnArea" AreaIndex="1" Caption="Sales Person" DisplayFolder="Sales Person" HeaderTemplate="{StaticResource SalesPersonFieldHeaderTemplate}" HeaderListTemplate="{StaticResource SalesPersonFieldHeaderTemplate}" />


                <dxpg:PivotGridField x:Name="fieldFirstName" FieldName="FirstName" Area="ColumnArea" AreaIndex="1" Caption="First Name" DisplayFolder="Sales Person\Name" Visible="False" />


                <dxpg:PivotGridField x:Name="fieldLastName" FieldName="LastName" Area="ColumnArea" AreaIndex="1" Caption="Last Name" DisplayFolder="Sales Person\Name" Visible="False" />


                <dxpg:PivotGridField x:Name="fieldOrderID" FieldName="OrderID" Area="FilterArea" Caption="Order ID" Visible="False" DisplayFolder="Orders" HeaderTemplate="{StaticResource OrderFieldHeaderTemplate}" HeaderListTemplate="{StaticResource OrderFieldHeaderTemplate}" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Caption="Quantity" Visible="False" DisplayFolder="Orders" />
                <dxpg:PivotGridField x:Name="fieldUnitPrice" FieldName="UnitPrice" Area="DataArea" Caption="Unit Price" Visible="False" DisplayFolder="Orders" />
                <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" Area="DataArea" Caption="Discount" Visible="False" DisplayFolder="Orders" />
                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Caption="Extended Price" Visible="False" DisplayFolder="Orders" />

            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Core;
using System.Windows.Markup;
using System.Windows.Data;
using DevExpress.Xpf.Editors.Helpers;
using DevExpress.Xpf.Core.Native;
using DevExpress.Xpf.Editors.Popups;
using System.Windows.Controls;

using SelectionChangedEventArgs = DevExpress.Xpf.Editors.WPFCompatibility.SLSelectionChangedEventArgs;

namespace PivotGridDemo.PivotGrid {
    public partial class FieldsCustomization : PivotGridDemoModule {
        public FieldsCustomization() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
            pivotGrid.FieldListFactory = DefaultFieldListFactory.Instance;
        }

        protected override void RaiseIsPopupContentInvisibleChanged(DependencyPropertyChangedEventArgs e) {
            base.RaiseIsPopupContentInvisibleChanged(e);
            if(!IsPopupContentInvisible)
            pivotGrid.ShowFieldList();
        }

        void ShowHideFieldList_Click(object sender, RoutedEventArgs e) {
            pivotGrid.IsFieldListVisible = !pivotGrid.IsFieldListVisible;
        }

        void customizationStyle_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            bool IsFieldListVisible = pivotGrid.IsFieldListVisible;
            pivotGrid.FieldListStyle = (FieldListStyle)customizationStyle.SelectedItem;
            pivotGrid.IsFieldListVisible = IsFieldListVisible;
            if(pivotGrid.FieldListStyle == FieldListStyle.Simple) {
                VisualStateManager.GoToState(this, "HideAdvancedOptions", true);

            } else {
                VisualStateManager.GoToState(this, "ShowAdvancedOptions", true);
            }
        }

        void OnAllowCustomizationFormChanged(object sender, EditValueChangedEventArgs e) {
            pivotGrid.IsFieldListVisible = pivotGrid.AllowCustomizationForm;
        }

        void OnCustomizationLayoutsEditValueChanged(object sender, EditValueChangedEventArgs e) {
            FieldListAllowedLayouts layout = (FieldListAllowedLayouts)customizationLayouts.SelectedItems[0];
            foreach(FieldListAllowedLayouts layout2 in customizationLayouts.SelectedItems)
                layout = layout | layout2;
            pivotGrid.FieldListAllowedLayouts = layout;
            EnsureCurrentLayoutItems(true);
        }

        void OnCustomizationLayoutsPopupContentSelectionChanged(object sender, SelectionChangedEventArgs e) {
            PopupBaseEditHelper.GetOkButton(customizationLayouts).IsEnabled = GetListBox().SelectedItems.Count > 0;
        }
        PopupListBox GetListBox() {
            return (PopupListBox)LayoutHelper.FindElement((FrameworkElement)PopupBaseEditHelper.GetPopup(customizationLayouts).PopupContent, IsListBox);
        }
        bool IsListBox(FrameworkElement d) {
            return d as PopupListBox != null;
        }

        void OnCurrentLayoutEditValueChanged(object sender, EditValueChangedEventArgs e) {
            EnsureCurrentLayoutItems(false);
        }

        void EnsureCurrentLayoutItems(bool includeCurrent) {
            currentLayout.Items.BeginUpdate();
            currentLayout.Items.Clear();
            foreach(FieldListAllowedLayouts layout2 in customizationLayouts.SelectedItems) {
                currentLayout.Items.Add(ToFieldListAllowedLayouts(layout2));
            }
            if(includeCurrent && !currentLayout.Items.Contains(pivotGrid.FieldListLayout))
                currentLayout.Items.Add(pivotGrid.FieldListLayout);
            currentLayout.Items.EndUpdate();
        }

        FieldListAllowedLayouts ToFieldListAllowedLayouts(FieldListLayout layout) {
            switch(layout) {
                case FieldListLayout.BottomPanelOnly1by4:
                    return FieldListAllowedLayouts.BottomPanelOnly1by4;
                case FieldListLayout.BottomPanelOnly2by2:
                    return FieldListAllowedLayouts.BottomPanelOnly2by2;
                case FieldListLayout.StackedDefault:
                    return FieldListAllowedLayouts.StackedDefault;
                case FieldListLayout.StackedSideBySide:
                    return FieldListAllowedLayouts.StackedSideBySide;
                case FieldListLayout.TopPanelOnly:
                    return FieldListAllowedLayouts.TopPanelOnly;
                default:
                    throw new NotImplementedException("FieldListLayout");
            }
        }

        FieldListLayout ToFieldListAllowedLayouts(FieldListAllowedLayouts layout) {
            switch(layout) {
                case FieldListAllowedLayouts.BottomPanelOnly1by4:
                    return FieldListLayout.BottomPanelOnly1by4;
                case FieldListAllowedLayouts.BottomPanelOnly2by2:
                    return FieldListLayout.BottomPanelOnly2by2;
                case FieldListAllowedLayouts.StackedDefault:
                    return FieldListLayout.StackedDefault;
                case FieldListAllowedLayouts.StackedSideBySide:
                    return FieldListLayout.StackedSideBySide;
                case FieldListAllowedLayouts.TopPanelOnly:
                    return FieldListLayout.TopPanelOnly;
                default:
                    return FieldListLayout.StackedDefault;
            }
        }
    }

    public class FieldListVisibleToCommandTextConverter : MarkupExtension, IValueConverter {
        #region IValueConverter Members
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            switch((bool)value) {
                case false:
                    return "Show Field List";
                default:
                    return "Hide Field List";
            }
        }
        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            throw new NotImplementedException();
        }
        #endregion

        public override object ProvideValue(IServiceProvider serviceProvider) {
            return this;
        }
    }
}!Y<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.FilterPopup" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Filter Popup Options">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit IsChecked="{Binding Path=IsFilterPopupMenuEnabled, ElementName=pivotGrid, Mode=TwoWay}" Content="Enable Filter Popup Menu" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=ShowOnlyAvailableFilterItems, ElementName=pivotGrid, Mode=TwoWay}" Content="Show Only Available Filter Items" Margin="0,0,6,4" />
                        <StackPanel Orientation="Horizontal" Margin="0,1,0,0">
                            <TextBlock Text="Group Filter Mode:" Margin="0,2,0,4" />
                            <dxe:ComboBoxEdit SelectedItem="{Binding Path=GroupFilterMode, ElementName=pivotGrid, Mode=TwoWay}" Width="52" IsTextEditable="False" Margin="6,0,6,4">
                                <dxe:ComboBoxEdit.Items>
                                    <dxpg:GroupFilterMode>Tree</dxpg:GroupFilterMode>
                                    <dxpg:GroupFilterMode>List</dxpg:GroupFilterMode>
                                </dxe:ComboBoxEdit.Items>
                            </dxe:ComboBoxEdit>
                        </StackPanel>
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="180" Loaded="OnPivotGridLoaded" ShowBorder="False" ShowOnlyAvailableFilterItems="True">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category" Group="{Binding ElementName=PivotGridGroup1}" />
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product" Group="{Binding ElementName=PivotGridGroup1}" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="80" Group="{Binding ElementName=PivotGridGroup2}" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" ExpandedInFieldsGroup="False" Width="80" ValueFormat="Quarter {0}" Group="{Binding ElementName=PivotGridGroup2}" />
                <dxpg:PivotGridField x:Name="fieldMonth" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateMonth" Caption="Month" Width="80" Group="{Binding ElementName=PivotGridGroup2}" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Width="100" Caption="Order Amount" ExpandedInFieldsGroup="False" />

            </dxpg:PivotGridControl.Fields>
            <dxpg:PivotGridControl.Groups>
                <dxpg:PivotGridGroup x:Name="PivotGridGroup1" />
                <dxpg:PivotGridGroup x:Name="PivotGridGroup2" />
            </dxpg:PivotGridControl.Groups>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!wusing System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class FilterPopup : PivotGridDemoModule {

        public FilterPopup() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }

        void OnPivotGridLoaded(object sender, RoutedEventArgs e) {
            SetGroupFilter();
            SetFilter();
        }

        void SetGroupFilter() {
            if(PivotGridGroup1 == null || !PivotGridGroup1.FilterValues.IsEmpty) return;
            PivotGridGroup1.FilterValues.BeginUpdate();
            PivotGridGroup1.FilterValues.FilterType = FieldFilterType.Included;
            PivotGridGroup1.FilterValues.Values.Add("Beverages");
            PivotGridGroup1.FilterValues.EndUpdate();
            if(PivotGridGroup2 == null || !PivotGridGroup2.FilterValues.IsEmpty) return;
            PivotGridGroup2.FilterValues.BeginUpdate();
            PivotGridGroup2.FilterValues.FilterType = FieldFilterType.Included;
            PivotGridGroup2.FilterValues.Values.Add(1994).ChildValues.Add(3);
            PivotGridGroup2.FilterValues.Values[1994].ChildValues[3].ChildValues.Add(9);
            PivotGridGroup2.FilterValues.Values.Add(1995).ChildValues.Add(1);
            PivotGridGroup2.FilterValues.Values[1995].ChildValues.Add(4);
            PivotGridGroup2.FilterValues.EndUpdate();
        }

        void SetFilter() {
            fieldCategory.FilterValues.FilterType = FieldFilterType.Included;
            fieldCategory.FilterValues.Add("Beverages");
        }
    }
}!�
<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.GroupInterval" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">
    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="FieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Price.png" Stretch="None" VerticalAlignment="Center" HorizontalAlignment="Left" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Group Settings" Margin="0,0,0,4">
                    <StackPanel>
                        <TextBlock VerticalAlignment="Center" Margin="0,4,0,4">Group Interval for the OrderDate field:</TextBlock>
                        <dxe:ComboBoxEdit Name="cbGroupInterval" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,4,0,4" SelectedIndexChanged="cbGroupInterval_SelectedIndexChanged" />
                        <dxe:CheckEdit Name="ceProductInterval" IsChecked="{Binding ElementName=fieldProductAlphabetical, Path=Visible, Mode=TwoWay}" Content="Show Product Alphabetically" Margin="0,4,0,4" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="248" ShowFilterHeaders="False" FieldValueDisplayText="pivotGrid_FieldValueDisplayText" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldProductAlphabetical" FieldName="ProductName" UnboundFieldName="fieldProductAlphabetical" Area="RowArea" AreaIndex="0" Caption="Product Alphabetical" GroupInterval="Alphabetical" Width="155" />
                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" AreaIndex="1" Width="155" Caption="Product" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" CellFormat="c" HeaderTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" HeaderListTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" />

                <dxpg:PivotGridField x:Name="fieldOrderDate" FieldName="OrderDate" UnboundFieldName="fieldOrderDate" Area="ColumnArea" AreaIndex="0" GroupInterval="DateMonth" Caption="Order Date" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!iusing System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;
using DevExpress.Data.Mask;

namespace PivotGridDemo.PivotGrid {
    public partial class GroupInterval : PivotGridDemoModule {
        public GroupInterval() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
        void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            InitComboBoxes();
            ceProductInterval.IsChecked = true;
        }
        void InitComboBoxes() {
            Array arr = EnumHelper.GetValues(typeof(FieldGroupInterval));
            foreach(FieldGroupInterval interval in arr)
                if(interval.ToString().IndexOf("Date") == 0)
                    cbGroupInterval.Items.Add(new ComboBoxEditItem() { Content = interval.ToString(), Tag = interval });
            cbGroupInterval.SelectedIndex = cbGroupInterval.Items.Count - 1;
        }
        void pivotGrid_FieldValueDisplayText(object sender, PivotFieldDisplayTextEventArgs e) {
            if(object.ReferenceEquals(e.Field, fieldOrderDate) && e.Field.GroupInterval == FieldGroupInterval.DateQuarter) {
                e.DisplayText = string.Format("Qtr {0}", e.Value);
                if(e.ValueType == FieldValueType.Total) e.DisplayText += " Total";
            }
        }
        void cbGroupInterval_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            if(cbGroupInterval.SelectedIndex < 0)
                return;
            fieldOrderDate.FilterValues.Clear();
            fieldOrderDate.GroupInterval = (FieldGroupInterval)((ComboBoxEditItem)cbGroupInterval.SelectedItem).Tag;
            fieldOrderDate.Caption = string.Format("Order Date ({0})", fieldOrderDate.GroupInterval.ToString().Replace("Date", ""));
        }
    }
}!/
<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.Groups" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl SupressGroupFramePaddingInOptions="False">
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <Button Content="Collapse All Groups" Click="Expand_Click" Name="ButtonCollapse" Padding="4,2,4,2" />
                <Button Content="Expand All Groups" Click="Collapse_Click" Name="ButtonExpand" Padding="4,2,4,2" Margin="0,10,0,0" />
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="200" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category" Group="{Binding ElementName=PivotGridGroup1}" />
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product" Group="{Binding ElementName=PivotGridGroup1}" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="80" Group="{Binding ElementName=PivotGridGroup2}" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" ExpandedInFieldsGroup="False" Width="80" ValueFormat="Quarter {0}" Group="{Binding ElementName=PivotGridGroup2}" />
                <dxpg:PivotGridField x:Name="fieldMonth" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateMonth" Caption="Month" Width="80" Group="{Binding ElementName=PivotGridGroup2}" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Width="100" Caption="Order Amount" ExpandedInFieldsGroup="False" Group="{Binding ElementName=PivotGridGroup3}" />

                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Width="100" Caption="Quantity" Group="{Binding ElementName=PivotGridGroup3}" />
                <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" Area="DataArea" Width="100" Caption="Discount (Avr)" SummaryType="Average" CellFormat="p" Group="{Binding ElementName=PivotGridGroup3}" />
            </dxpg:PivotGridControl.Fields>
            <dxpg:PivotGridControl.Groups>
                <dxpg:PivotGridGroup x:Name="PivotGridGroup1" />
                <dxpg:PivotGridGroup x:Name="PivotGridGroup2" />
                <dxpg:PivotGridGroup x:Name="PivotGridGroup3" />
            </dxpg:PivotGridControl.Groups>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!zusing System;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.Xpf.DemoBase;
using System.Windows;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class Groups : PivotGridDemoModule {
        bool isExpanded;

        public Groups() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
        void UpdateGroupsExpanded() {
            pivotGrid.BeginUpdate();
            try {
                foreach(PivotGridGroup group in pivotGrid.Groups)
                    foreach(PivotGridField field in group)
                        field.ExpandedInFieldsGroup = isExpanded;
            } finally {
                pivotGrid.EndUpdate();
            }
        }


        private void Collapse_Click(object sender, RoutedEventArgs e) {
            isExpanded = true;
            UpdateGroupsExpanded();
        }

        private void Expand_Click(object sender, RoutedEventArgs e) {
            isExpanded = false;
            UpdateGroupsExpanded();
        }
    }
}!<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.MultipleTotals" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>
        <dxpg:PivotGridControl local:FieldAreaHelper.FixAreas="True" x:Name="pivotGrid" RowTreeWidth="200" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category" TotalsVisibility="CustomTotals">
                    <dxpg:PivotGridField.CustomTotals>
                        <dxpg:PivotGridCustomTotal SummaryType="Average" />
                        <dxpg:PivotGridCustomTotal SummaryType="Sum" />
                        <dxpg:PivotGridCustomTotal SummaryType="Max" />
                        <dxpg:PivotGridCustomTotal SummaryType="Min" />
                        <dxpg:PivotGridCustomTotal SummaryType="Count" />
                    </dxpg:PivotGridField.CustomTotals>
                </dxpg:PivotGridField>
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="80" Group="{Binding ElementName=PivotGridGroup1}" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" Width="80" ValueFormat="Quarter {0}" Group="{Binding ElementName=PivotGridGroup1}" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Width="100" Caption="Quantity" CellFormat="f2" Group="{Binding ElementName=PivotGridGroup2}" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Width="100" Caption="Extended Price" Group="{Binding ElementName=PivotGridGroup2}" />

            </dxpg:PivotGridControl.Fields>
            <dxpg:PivotGridControl.Groups>
                <dxpg:PivotGridGroup x:Name="PivotGridGroup1" />
                <dxpg:PivotGridGroup x:Name="PivotGridGroup2" />
            </dxpg:PivotGridControl.Groups>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!6using System;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.Xpf.DemoBase;
using System.Windows;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class MultipleTotals : PivotGridDemoModule {

        public MultipleTotals() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
            fieldYear.FilterValues.FilterType = FieldFilterType.Included;
            fieldYear.FilterValues.Add(1995);
        }
    }
}!<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.OLAPBrowser" Height="515" Width="937" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxlc="http://schemas.devexpress.com/winfx/2008/xaml/layoutcontrol" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:sys="clr-namespace:System;assembly=mscorlib">
    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="/PivotGridDemo;component/Controls/ControlStyles/DataSourceDialog.SL.xaml" />
            </ResourceDictionary.MergedDictionaries>
            <dx:BoolToObjectConverter x:Key="inverseBoolConverter">
                <dx:BoolToObjectConverter.TrueValue>
                    <sys:Boolean>False</sys:Boolean>
                </dx:BoolToObjectConverter.TrueValue>
                <dx:BoolToObjectConverter.FalseValue>
                    <sys:Boolean>True</sys:Boolean>
                </dx:BoolToObjectConverter.FalseValue>
            </dx:BoolToObjectConverter>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>

    <dxdb:DemoModuleControl>
        <VisualStateManager.VisualStateGroups>
            <VisualStateGroup x:Name="ShowErrorMessageGroup">
                <VisualState x:Name="ShowErrorMessage">
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Opacity" From="0" To="1" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Height" From="0" To="70" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="errorBorder" BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.Visibility)">
                            <ObjectAnimationUsingKeyFrames.KeyFrames>
                                <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                    <DiscreteObjectKeyFrame.Value>
                                        <Visibility>Visible</Visibility>
                                    </DiscreteObjectKeyFrame.Value>
                                </DiscreteObjectKeyFrame>
                            </ObjectAnimationUsingKeyFrames.KeyFrames>
                        </ObjectAnimationUsingKeyFrames>
                    </Storyboard>
                </VisualState>
                <VisualState x:Name="HideErrorMessage">
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Opacity" From="1" To="0" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Height" From="70" To="0" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="errorBorder" BeginTime="00:00:0.7" Storyboard.TargetProperty="(UIElement.Visibility)">
                            <ObjectAnimationUsingKeyFrames.KeyFrames>
                                <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                    <DiscreteObjectKeyFrame.Value>
                                        <Visibility>Collapsed</Visibility>
                                    </DiscreteObjectKeyFrame.Value>
                                </DiscreteObjectKeyFrame>
                            </ObjectAnimationUsingKeyFrames.KeyFrames>
                        </ObjectAnimationUsingKeyFrames>
                    </Storyboard>
                </VisualState>
            </VisualStateGroup>
        </VisualStateManager.VisualStateGroups>
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>
            <Border x:Name="errorBorder" Visibility="Collapsed">
                <Border BorderThickness="1" BorderBrush="Black" CornerRadius="5" Padding="14" Margin="3">
                    <TextBlock x:Name="errorText" />
                </Border>
            </Border>
            <dxlc:DockLayoutControl Grid.Row="1">
                <Border dxlc:DockLayoutControl.Dock="Right" dxlc:DockLayoutControl.AllowHorizontalSizing="True" Padding="6,8,12,12" Width="300" Background="{Binding Background, ElementName=pivotGrid}">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto" />
                            <RowDefinition Height="30" />
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>

                        <local:InternetConnectionControl Height="60" />

                        <Button x:Name="showConnectionButton" Content="New Connection" Grid.Row="1" Click="OnShowConnectionClick" Margin="0,0,0,7" IsEnabled="{Binding IsMainWaitIndicatorVisible, ElementName=pivotGrid, Converter={StaticResource inverseBoolConverter}}" />
                        <dxpg:PivotExcelFieldListControl Grid.Row="2" x:Name="fieldList" Owner="{Binding ElementName=pivotGrid}" HorizontalAlignment="Stretch" />
                    </Grid>
                </Border>
                <dxpg:PivotGridControl ShowFilterHeaders="False" ShowDataHeaders="False" ShowColumnHeaders="False" ShowRowHeaders="False" dxlc:DockLayoutControl.AllowHorizontalSizing="True" dxlc:DockLayoutControl.Dock="Client" Margin="0,0,6,0" CellDoubleClick="pivotGrid_CellDoubleClick" RowTreeWidth="202" SizeChanged="OnPivotGridSizeChanged" OlapException="OnPivotGridOlapException" FieldListSplitterY="200" Grid.RowSpan="2" x:Name="pivotGrid" VerticalAlignment="Stretch" ShowBorder="False" Loaded="OnPivotGridLoaded">
                </dxpg:PivotGridControl>
            </dxlc:DockLayoutControl>
        </Grid>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!W'using System;
using System.Collections.Generic;
using System.IO;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media.Animation;
using System.Windows.Threading;
using DevExpress.DemoData.Helpers;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.DemoBase.Helpers;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.Grid;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class OLAPBrowser : PivotGridDemoModule {

        const string YearFieldName = "[Date].[Calendar].[Calendar Year]";
        const string CategoryFieldName = "[Product].[Product].[Product]";
        const string TotalCostFieldName = "[Measures].[Total Product Cost]";
        const string FreightFieldName = "[Measures].[Freight Cost]";
        const string QuantityOrderFieldName = "[Measures].[Order Quantity]";
        protected const int DefaultFieldWidth = 90;
        double lastSplitterY = 200;

        readonly int DataSourceDialohHeight = 250;
        string SampleConnectionString {
            get { return "Data Source=http://demos.devexpress.com/Services/OLAP/msmdpump.dll;Initial Catalog=Adventure Works DW Standard Edition;Cube Name=Adventure Works;query timeout=2;connect timeout=2;"; }
        }
        string PivotConnectionString() {
            return pivotGrid.OlapConnectionString;
        }
        bool IsSampleCube() {
            return pivotGrid.OlapConnectionString.Contains("Cube Name=Adventure Works");
        }
        static OLAPBrowser() {
            Type ownerType = typeof(OLAPBrowser);
        }

        public OLAPBrowser() {
            InitializeComponent();
        }

        void OnPivotGridLoaded(object sender, RoutedEventArgs e) {
            InitPivotGrid(SampleConnectionString);
        }

        void OnPivotGridSizeChanged(object sender, SizeChangedEventArgs e) {
            PivotGridControl pivot = sender as PivotGridControl;
            if(pivot == null || pivot.RenderSize.Height < 200 || lastSplitterY != pivot.FieldListSplitterY)
                return;
            pivot.FieldListSplitterY = Math.Round((pivot.RenderSize.Height - 90) * 0.5);
            lastSplitterY = pivot.FieldListSplitterY;
        }

        void InitPivotLayoutSampleOlapDB(AsyncOperationResult result) {
            if(pivotGrid.Fields.Count == 0 || !IsSampleCube()) return;
            pivotGrid.BeginUpdate();
            PivotGridField fieldProduct = pivotGrid.Fields[CategoryFieldName],
                fieldYear = pivotGrid.Fields[YearFieldName],
                fieldTotalCost = pivotGrid.Fields[TotalCostFieldName],
                fieldFreightCost = pivotGrid.Fields[FreightFieldName],
                fieldOrderQuantity = pivotGrid.Fields[QuantityOrderFieldName];
            if(fieldProduct == null ||
                fieldYear == null ||
                fieldTotalCost == null ||
                fieldFreightCost == null ||
                fieldOrderQuantity == null) {
                pivotGrid.EndUpdateAsync();
                return;
            }
            fieldProduct.Area = FieldArea.RowArea;
            fieldYear.Area = FieldArea.ColumnArea;
            fieldYear.SortOrder = FieldSortOrder.Descending;
            fieldTotalCost.Width = DefaultFieldWidth + 20;
            fieldTotalCost.CellFormat = "c2";
            fieldFreightCost.Width = DefaultFieldWidth;
            fieldFreightCost.CellFormat = "c2";
            fieldOrderQuantity.Width = DefaultFieldWidth + 5;
            fieldProduct.Visible = true;
            fieldYear.Visible = true;
            fieldTotalCost.Visible = true;
            fieldFreightCost.Visible = true;
            fieldOrderQuantity.Visible = true;
            pivotGrid.EndUpdateAsync();
        }

        void InitPivotGrid(string connectionString) {
            if(string.IsNullOrWhiteSpace(connectionString)) {
                pivotGrid.DataSource = null;
                return;
            }
            if(PivotConnectionString() == connectionString) return;
            pivotGrid.BeginUpdate();
            pivotGrid.Fields.Clear();
            pivotGrid.Groups.Clear();
            pivotGrid.OlapConnectionString = connectionString;
            pivotGrid.EndUpdateAsync(delegate(AsyncOperationResult result) {
                if(pivotGrid.Fields.Count == 0)
                    pivotGrid.RetrieveFieldsAsync(FieldArea.FilterArea, false, InitPivotLayoutSampleOlapDB);
            });
        }

        DataSourceDialog dialog;
        void OnShowConnectionClick(object sender, RoutedEventArgs e) {
            if(pivotGrid == null || pivotGrid.IsAsyncInProgress)
                return;
            errorBorder.Visibility = System.Windows.Visibility.Collapsed;
            dialog = new DataSourceDialog();
            dialog.Style = (Style)ResourceHelper.FindResource(this, "DataSourceDialogStyle");
            FloatingContainerParameters pars = new FloatingContainerParameters();
            pars.AllowSizing = false;
            pars.CloseOnEscape = true;
            pars.Title = "OLAP Connection";
            pars.ClosedDelegate = DialogClosed;
            FloatingContainer.ShowDialogContent(dialog, this, new Size(600, DataSourceDialohHeight), pars);
        }

        void DialogClosed(bool? close) {
            if(dialog == null)
                return;
            String connectionString = dialog.GetConnectionString();
            dialog = null;
            if(close != true)
                return;
            if(string.IsNullOrWhiteSpace(connectionString)) {
                return;
            }
            InitPivotGrid(connectionString);

        }

        private void pivotGrid_CellDoubleClick(object sender, PivotCellEventArgs e) {
            AsyncCompletedHandler showDrillDown = delegate(AsyncOperationResult result) {
                try {
                    if(result.Exception != null)
                        ShowMessageBox(result.Exception.Message);
                    else
                        ShowDrillDown((PivotDrillDownDataSource)result.Value);
                } catch(Exception ex) {
                    ShowMessageBox(ex.Message);
                }
            };
            pivotGrid.CreateDrillDownDataSourceAsync(e.ColumnIndex, e.RowIndex, showDrillDown);
        }

        void ShowDrillDown(PivotDrillDownDataSource drillDownDataSource) {
            if(drillDownDataSource.RowCount == 0) {
                ShowMessageBox("DrillDown operation returned no rows");
                return;
            }
            GridControl grid = new GridControl();
            grid.View = new TableView() { AllowPerPixelScrolling = true, ShowGroupPanel = false };
            grid.ItemsSource = drillDownDataSource;
            grid.AutoGeneratedColumns += grid_ColumnsPopulated;
            grid.PopulateColumns();
            grid.ShowBorder = false;
            FloatingWindowContainer.ShowDialogContent(grid, this, new Size(520, 300),
             new FloatingContainerParameters() {
                 AllowSizing = true,
                 CloseOnEscape = true,
                 Title = String.Format("Drill Down Results: {0} Rows", drillDownDataSource.RowCount),
                 ClosedDelegate = null,
             });
        }

        void ShowMessageBox(string message) {
            FloatingContainerParameters pars = new FloatingContainerParameters();
            pars.AllowSizing = false;
            pars.DialogButtons = DialogButtons.Ok;
            pars.Title = "Error";
            TextBlock text = new TextBlock();
            text.Text = message;
            text.VerticalAlignment = System.Windows.VerticalAlignment.Center;
            text.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;
            FloatingContainer.ShowDialogContent(text, this, new Size(420, 150), pars);
        }

        void grid_ColumnsPopulated(object sender, RoutedEventArgs e) {
            GridControl grid = (GridControl)sender;
            for(int i = 0; i < grid.Columns.Count; i++) {
                GridColumn column = grid.Columns[i];
                column.Header = GetHeaderText((string)column.FieldName);
            }
        }

        string GetHeaderText(string drilldownColumnName) {
            for(int i = 0; i < pivotGrid.Fields.Count; i++) {
                PivotGridField field = pivotGrid.Fields[i];
                string fieldDrillDownColumnName = !string.IsNullOrEmpty(PivotConnectionString()) ? field.OlapDrillDownColumnName : field.ExpressionFieldName;
                if(fieldDrillDownColumnName == drilldownColumnName)
                    return !string.IsNullOrEmpty(field.Caption) ? field.Caption : fieldDrillDownColumnName;
            }
            return drilldownColumnName;
        }

        void OnPivotGridOlapException(object sender, PivotOlapExceptionEventArgs e) {
            e.Handled = true;
            pivotGrid.Dispatcher.BeginInvoke(
                new Action(delegate() {
                ShowOLAPErrorMessage(e);
            })
               );
        }

        void ShowOLAPErrorMessage(PivotOlapExceptionEventArgs e) {
            errorText.Text = (e.Exception.Message + "\r\n " + ((e.Exception.InnerException != null) ? e.Exception.InnerException.Message : string.Empty));
            VisualStateManager.GoToState(this, "ShowErrorMessage", true);
            DispatcherTimer timer = new DispatcherTimer();
            timer.Interval = new TimeSpan(0, 0, 10);
            timer.Tick += OnTimerTick;
            timer.Start();
            e.Handled = true;
        }

        void OnTimerTick(object sender1, EventArgs e1) {
            DispatcherTimer self = sender1 as DispatcherTimer;
            if(self == null)
                return;
            self.Stop();
            self.Tick -= OnTimerTick;
            VisualStateManager.GoToState(this, "HideErrorMessage", true);
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.OLAPKPI" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>

        <VisualStateManager.VisualStateGroups>
            <VisualStateGroup x:Name="ShowErrorMessageGroup">
                <VisualState x:Name="ShowErrorMessage">
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Opacity" From="0" To="1" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Height" From="0" To="70" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="errorBorder" BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.Visibility)">
                            <ObjectAnimationUsingKeyFrames.KeyFrames>
                                <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                    <DiscreteObjectKeyFrame.Value>
                                        <Visibility>Visible</Visibility>
                                    </DiscreteObjectKeyFrame.Value>
                                </DiscreteObjectKeyFrame>
                            </ObjectAnimationUsingKeyFrames.KeyFrames>
                        </ObjectAnimationUsingKeyFrames>
                    </Storyboard>
                </VisualState>
                <VisualState x:Name="HideErrorMessage">
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Opacity" From="1" To="0" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <DoubleAnimation Storyboard.TargetName="errorBorder" Storyboard.TargetProperty="Height" From="70" To="0" BeginTime="00:00:00" Duration="00:00:0.7" />
                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="errorBorder" BeginTime="00:00:0.7" Storyboard.TargetProperty="(UIElement.Visibility)">
                            <ObjectAnimationUsingKeyFrames.KeyFrames>
                                <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                    <DiscreteObjectKeyFrame.Value>
                                        <Visibility>Collapsed</Visibility>
                                    </DiscreteObjectKeyFrame.Value>
                                </DiscreteObjectKeyFrame>
                            </ObjectAnimationUsingKeyFrames.KeyFrames>
                        </ObjectAnimationUsingKeyFrames>
                    </Storyboard>
                </VisualState>
            </VisualStateGroup>
        </VisualStateManager.VisualStateGroups>

        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Graphics" Margin="0,0,0,8">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*" />
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                        <TextBlock Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" Margin="0,0,4,4">Status Graphics</TextBlock>
                        <dxe:ComboBoxEdit Grid.Row="0" Grid.Column="1" Name="cbStatusGraphics" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,0,0,4" SelectedIndexChanged="cbStatusGraphics_SelectedIndexChanged" />
                        <TextBlock Grid.Row="1" Grid.Column="0" VerticalAlignment="Center">Trend Graphics</TextBlock>
                        <dxe:ComboBoxEdit Grid.Row="1" Grid.Column="1" Name="cbTrendGraphics" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" SelectedIndexChanged="cbTrendGraphics_SelectedIndexChanged" />
                    </Grid>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <Grid>

            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>

            <Border x:Name="errorBorder" Visibility="Collapsed">
            <Border BorderThickness="1" BorderBrush="Black" CornerRadius="5" Padding="14" Margin="3">
                <TextBlock x:Name="errorText" />
            </Border>
        </Border>

        <dxpg:PivotGridControl Grid.Row="1" x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" OlapException="OnPivotGridOlapException" RowTreeWidth="260" VerticalAlignment="Stretch" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldFiscalYear" FieldName="[Date].[Fiscal].[Fiscal Year]" Area="RowArea" AreaIndex="0" Caption="Fiscal Year" ExpandedInFieldsGroup="False" />
                <dxpg:PivotGridField x:Name="fieldFiscalSemester" FieldName="[Date].[Fiscal].[Fiscal Semester]" Area="RowArea" AreaIndex="1" Caption="Fiscal Semester" Width="100" />
                <dxpg:PivotGridField x:Name="fieldFiscalQuarter" FieldName="[Date].[Fiscal].[Fiscal Quarter]" Area="RowArea" AreaIndex="2" Caption="Fiscal Quarter" />
                <dxpg:PivotGridField x:Name="fieldInternetRevenue" FieldName="[Measures].[Internet Sales Amount]" Area="DataArea" AreaIndex="0" Caption="Internet Revenue" />
                <dxpg:PivotGridField x:Name="fieldGoal" FieldName="[Measures].[Internet Revenue Goal]" Area="DataArea" AreaIndex="1" Caption="Goal" />
                <dxpg:PivotGridField x:Name="fieldStatus" FieldName="[Measures].[Internet Revenue Status]" Area="DataArea" AreaIndex="2" Caption="Status" />
                <dxpg:PivotGridField x:Name="fieldTrend" FieldName="[Measures].[Internet Revenue Trend]" Area="DataArea" AreaIndex="3" Caption="Trend" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>

        </Grid>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�
using System;
using System.IO;
using System.Windows;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.DemoData.Helpers;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.DemoBase.Helpers;
using DevExpress.Xpf.Editors;
using DevExpress.Xpf.PivotGrid;
using System.Windows.Threading;

namespace PivotGridDemo.PivotGrid {
    public partial class OLAPKPI : PivotGridDemoModule {

        public OLAPKPI() {
            InitializeComponent();

            cbStatusGraphics.ItemsSource = Enum.GetValues(typeof(PivotKpiGraphic));
            cbStatusGraphics.SelectedIndex = 1;
            cbTrendGraphics.ItemsSource = Enum.GetValues(typeof(PivotKpiGraphic));
            cbTrendGraphics.SelectedIndex = 1;

            InitPivotGrid();
        }

        private void InitPivotGrid() {
            pivotGrid.OlapConnectionString = SampleConnectionString;
        }
        string SampleConnectionString {
            get { return "Data Source=http://demos.devexpress.com/Services/OLAP/msmdpump.dll;Initial Catalog=Adventure Works DW Standard Edition;Cube Name=Adventure Works;query timeout=2;connect timeout=2;"; }
        }

        private void cbStatusGraphics_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            fieldStatus.KpiGraphic = (PivotKpiGraphic)(((ComboBoxEdit)sender).SelectedItem);
        }

        private void cbTrendGraphics_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            fieldTrend.KpiGraphic = (PivotKpiGraphic)(((ComboBoxEdit)sender).SelectedItem);
        }

        void OnPivotGridOlapException(object sender, PivotOlapExceptionEventArgs e) {
            e.Handled = true;
            pivotGrid.Dispatcher.BeginInvoke(
                new Action(delegate() {
                ShowOLAPErrorMessage(e);
            })
               );
        }

        void ShowOLAPErrorMessage(PivotOlapExceptionEventArgs e) {
            errorText.Text = (e.Exception.Message + "\r\n " + ((e.Exception.InnerException != null) ? e.Exception.InnerException.Message : string.Empty));
            VisualStateManager.GoToState(this, "ShowErrorMessage", true);
            DispatcherTimer timer = new DispatcherTimer();
            timer.Interval = new TimeSpan(0, 0, 10);
            timer.Tick += OnTimerTick;
            timer.Start();
            e.Handled = true;
        }

        void OnTimerTick(object sender1, EventArgs e1) {
            DispatcherTimer self = sender1 as DispatcherTimer;
            if(self == null)
                return;
            self.Stop();
            self.Tick -= OnTimerTick;
            VisualStateManager.GoToState(this, "HideErrorMessage", true);
        }
    }
}!C
<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.OrderReports" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Order Reports">
                    <dxe:ListBoxEdit x:Name="reportsList" ShowBorder="False" SelectedIndex="0" Background="{x:Null}" SelectedIndexChanged="ListBoxEdit_SelectionChanged">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <sys:String>Orders</sys:String>
                            <sys:String>Orders (filtering)</sys:String>
                            <sys:String>Quantity</sys:String>
                            <sys:String>Average Unit Price</sys:String>
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Options" Name="groupOptions" Visibility="Collapsed">
                    <dxe:ComboBoxEdit Name="orderIDFilter" SelectedIndexChanged="orderIDFilter_SelectedIndexChanged" IsTextEditable="False" />
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="243" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldOrder" FieldName="OrderID" Area="RowArea" AllowFilter="False" AreaIndex="0" Width="150" Caption="OrderID" />
                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" AllowFilter="False" AreaIndex="1" Width="150" Caption="Product Name" />
                <dxpg:PivotGridField x:Name="fieldUnitPrice" FieldName="UnitPrice" Area="DataArea" Width="150" AllowFilter="False" AreaIndex="0" Caption="Unit Price" CellFormat="c" SummaryType="Average" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Width="120" AllowFilter="False" AreaIndex="1" Caption="Quantity" />
                <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" Area="DataArea" Width="120" AllowFilter="False" AreaIndex="2" Caption="Discount" TotalCellFormat="P" SummaryType="Average" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Width="150" AllowFilter="False" AreaIndex="3" Caption="Extended Price" CellFormat="c" />

            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�	using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Core;

namespace PivotGridDemo.PivotGrid {
    public partial class OrderReports : PivotGridDemoModule {

        public OrderReports() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.OrderReports;
        }
        private void ListBoxEdit_SelectionChanged(object sender, RoutedEventArgs e) {
            pivotGrid.BeginUpdate();
            groupOptions.Visibility = System.Windows.Visibility.Collapsed;
            fieldOrder.FilterValues.Clear();
            fieldOrder.FilterValues.FilterType = FieldFilterType.Excluded;
            fieldOrder.Area = FieldArea.RowArea;
            fieldUnitPrice.Area = FieldArea.DataArea;
            fieldDiscount.Area = FieldArea.DataArea;
            fieldExtendedPrice.Area = FieldArea.DataArea;
            fieldQuantity.Area = FieldArea.DataArea;

            switch(reportsList.SelectedIndex) {
                case 0:

                    break;
                case 1:
                    fieldOrder.AreaIndex = 0;
                    groupOptions.Visibility = System.Windows.Visibility.Visible;
                    if(orderIDFilter.Items.Count == 0) {
                        orderIDFilter.Items.AddRange(fieldOrder.GetUniqueValues());
                        orderIDFilter.SelectedIndex = 0;
                    }
                    SetFilter();
                    break;
                case 2:
                    fieldOrder.Area = FieldArea.FilterArea;
                    fieldUnitPrice.Area = FieldArea.FilterArea;
                    fieldDiscount.Area = FieldArea.FilterArea;
                    fieldExtendedPrice.Area = FieldArea.FilterArea;
                    break;
                case 3:
                    fieldOrder.Area = FieldArea.FilterArea;
                    fieldQuantity.Area = FieldArea.FilterArea;
                    fieldDiscount.Area = FieldArea.FilterArea;
                    fieldExtendedPrice.Area = FieldArea.FilterArea;
                    break;
            }
            pivotGrid.EndUpdate();
        }

        private void orderIDFilter_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            SetFilter();
        }

        void SetFilter() {
            fieldOrder.FilterValues.FilterType = FieldFilterType.Included;
            fieldOrder.FilterValues.Clear();
            fieldOrder.FilterValues.Add(orderIDFilter.SelectedItem);
        }
    }
}!�
<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.Prefilter" Height="300" Width="400" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" MinWidth="200">
                <dx:GroupFrame Header="Date interval" Margin="0,0,0,8">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition />
                            <RowDefinition />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition />
                        </Grid.ColumnDefinitions>
                        <TextBlock VerticalAlignment="Center">from:</TextBlock>
                        <dxe:DateEdit Foreground="Black" Grid.Column="1" Name="deFromDate" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="4,0,0,4" />
                        <TextBlock Grid.Row="1" VerticalAlignment="Center">to:</TextBlock>
                        <dxe:DateEdit Foreground="Black" Grid.Row="1" Grid.Column="1" Name="deToDate" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="4,4,0,0" />
                    </Grid>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" VerticalAlignment="Stretch" ShowBorder="False" RowTreeWidth="202">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" AreaIndex="0" Caption="Quantity" />
                <dxpg:PivotGridField x:Name="fieldOrderDate" FieldName="OrderDate" Area="ColumnArea" AreaIndex="0" UnboundFieldName="fieldOrderDate" Caption="Order Date" ValueFormat="d" Width="75" />
                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" AreaIndex="0" Caption="Product Name" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows;
using System.Globalization;
using DevExpress.Data.Filtering;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;

namespace PivotGridDemo.PivotGrid {
    public partial class Prefilter : PivotGridDemoModule {
        public Prefilter() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
            deFromDate.EditValue = new System.DateTime(1994, 8, 4, 11, 25, 54, 0);
            deToDate.EditValue = new System.DateTime(1996, 6, 5, 11, 26, 19, 0);
        }
        void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            deFromDate.EditValueChanged += deFromTo_EditValueChanged;
            deToDate.EditValueChanged += deFromTo_EditValueChanged;
        }
        void deFromTo_EditValueChanged(object sender, EditValueChangedEventArgs e) {
            ApplyPrefilter();
        }
        void ApplyPrefilter() {
            string str1 = GetCriteria(deFromDate.DateTime, true),
                str2 = GetCriteria(deToDate.DateTime, false);
            if(!string.IsNullOrEmpty(str1) && !string.IsNullOrEmpty(str2))
                pivotGrid.PrefilterCriteria = CriteriaOperator.Parse(str1 + " And " + str2);
            else
                pivotGrid.PrefilterCriteria = CriteriaOperator.Parse(str1 + str2);
        }
        string GetCriteria(DateTime date, bool isGreater) {
            if(date.Ticks == 0) return "";
            return string.Format("{0} {1} #{2}#", fieldOrderDate.Name, isGreater ? ">=" : "<=",
                Convert.ToString(date, CultureInfo.InvariantCulture));
        }
    }
}!R<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.PrintOptions" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxpgp="clr-namespace:DevExpress.Xpf.PivotGrid.Printing;assembly=DevExpress.Xpf.PivotGrid.v13.1" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Print Options" Margin="0,0,0,12">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintColumnHeaders, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Column Headers" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintRowHeaders, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Row Headers" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintFilterHeaders, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Filter Headers" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintDataHeaders, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Data Headers" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintHeadersOnEveryPage, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Headers On Every Page" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintUnusedFilterFields, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Unused Filter Fields" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=MergeColumnFieldValues, ElementName=pivotGrid, Mode=TwoWay}" Content="Merge Column Field Values" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=MergeRowFieldValues, ElementName=pivotGrid, Mode=TwoWay}" Content="Merge Row Field Values" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintHorzLines, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Horizontal Lines" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintVertLines, ElementName=pivotGrid, Mode=TwoWay}" Content="Print Vertical Lines" Margin="0,0,6,4" />
                        <dxe:CheckEdit IsChecked="{Binding Path=PrintInsertPageBreaks, ElementName=pivotGrid, Mode=TwoWay}" Content="Insert Page Breaks" Margin="0,0,6,4" />
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Text="Print Mode:" Margin="0,2,0,4" />
                            <dxe:ComboBoxEdit Width="140" IsTextEditable="False" SelectedItem="{Binding Path=PrintLayoutMode, ElementName=pivotGrid, Mode=TwoWay}" Margin="6,0,6,4">
                                <dxe:ComboBoxEdit.Items>
                                    <dxpgp:PrintLayoutMode>Auto</dxpgp:PrintLayoutMode>
                                    <dxpgp:PrintLayoutMode>SinglePageLayout</dxpgp:PrintLayoutMode>
                                    <dxpgp:PrintLayoutMode>MultiplePagesLayout</dxpgp:PrintLayoutMode>
                                </dxe:ComboBoxEdit.Items>
                            </dxe:ComboBoxEdit>
                        </StackPanel>
                    </StackPanel>
                </dx:GroupFrame>
                <Button Content="Print Preview" Click="Button_Click" Height="22" />
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="225" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category Name" />
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" Width="200" Caption="Product Name" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="80" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" Width="80" ValueFormat="Quarter {0}" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" Width="100" Caption="Quantity" CellFormat="f2" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" Width="100" Caption="Extended Price" />

            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.Printing;

namespace PivotGridDemo.PivotGrid {
    public partial class PrintOptions : PivotGridDemoModule {

        public PrintOptions() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }

        private void Button_Click(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(true, false);
            ShowPrintPreview(pivotGrid);
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.PrintTemplates" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxpgp="clr-namespace:DevExpress.Xpf.PivotGrid.Printing;assembly=DevExpress.Xpf.PivotGrid.v13.1" xmlns:dxpgi="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid/internal" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxp="http://schemas.devexpress.com/winfx/2008/xaml/printing" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">
    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <local:MoonPhaseImageConverter x:Key="MoonPhaseImageConverter" />
            <DataTemplate x:Key="cellTemplate">
                <dxe:TextEdit x:Name="Editor" IsPrintingMode="True" Padding="4,2" EditValue="{Binding Path=DisplayText, Mode=OneWay}" BorderThickness="{Binding Path=Border}" HorizontalContentAlignment="{Binding HorizontalContentAlignment}" BorderBrush="#C6D7ED" dxp:TextExportSettings.Text="{Binding DisplayText, Mode=OneWay}" dxp:TextExportSettings.TextValue="{Binding Value, Mode=OneWay}" dxp:TextExportSettings.TextValueFormatString="{Binding ValueFormat, Mode=OneWay}" dxp:TextExportSettings.XlsExportNativeFormat="{Binding UseNativeFormat, Mode=OneWay}" />
            </DataTemplate>
            <DataTemplate x:Key="cellTotalTemplate">
                <dxe:TextEdit x:Name="Editor" IsPrintingMode="True" Padding="4,2" EditValue="{Binding Path=DisplayText, Mode=OneWay}" BorderThickness="{Binding Path=Border}" HorizontalContentAlignment="{Binding HorizontalContentAlignment}" BorderBrush="#C6D7ED" Background="#F4F8FE" dxp:TextExportSettings.Text="{Binding DisplayText, Mode=OneWay}" dxp:TextExportSettings.TextValue="{Binding Value, Mode=OneWay}" dxp:TextExportSettings.TextValueFormatString="{Binding ValueFormat, Mode=OneWay}" dxp:TextExportSettings.XlsExportNativeFormat="{Binding UseNativeFormat, Mode=OneWay}" />
            </DataTemplate>
            <local:CellTemplateSelector x:Key="cellTemplateSelector" CellTemplate="{StaticResource cellTemplate}" CellTotalTemplate="{StaticResource cellTotalTemplate}" />
            <DataTemplate x:Key="valueTemplate">
                <dxe:TextEdit x:Name="Editor" IsPrintingMode="True" Padding="4,2" EditValue="{Binding Path=DisplayText, Mode=OneWay}" BorderThickness="{Binding Path=Border}" BorderBrush="#C6D7ED" Background="#EFF5FE" />
            </DataTemplate>
            <DataTemplate x:Key="valueTotalTemplate">
                <dxe:TextEdit x:Name="Editor" IsPrintingMode="True" Padding="4,2" EditValue="{Binding Path=DisplayText, Mode=OneWay}" BorderThickness="{Binding Path=Border}" BorderBrush="#C6D7ED" Background="#DCEAFB" />
            </DataTemplate>
            <local:FieldValueTemplateSelector x:Key="fieldValueTemplateSelector" ValueTemplate="{StaticResource valueTemplate}" ValueTotalTemplate="{StaticResource valueTotalTemplate}" />
            <DataTemplate x:Key="headerTemplate">
                <dxe:TextEdit x:Name="TextBlock" IsPrintingMode="True" EditValue="{Binding DisplayText, Mode=OneWay}" BorderThickness="{Binding BorderThickness}" Padding="{Binding Padding}" Background="#E0EDFF" BorderBrush="#ADC9FF" dxp:TextExportSettings.XlsExportNativeFormat="False" />
            </DataTemplate>
            <DataTemplate x:Key="MoonPhaseTemplate" DataType="dxpgi:FieldValueItem">
                <Border>
                    <Image Source="{Binding Converter={StaticResource MoonPhaseImageConverter}}" />
                </Border>
            </DataTemplate>
            <DataTemplate x:Key="MoonPhaseExportTemplate">
                <Border BorderThickness="{Binding Border}" HorizontalAlignment="Stretch" BorderBrush="#808080" dxp:ExportSettings.TargetType="Panel" dxp:ExportSettings.BorderThickness="{Binding Border}" dxp:ExportSettings.BorderColor="#808080">
                    <Image dxp:ExportSettings.TargetType="Image" dxp:ExportSettings.BorderThickness="0" Source="{Binding Converter={StaticResource MoonPhaseImageConverter}}" />
                </Border>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Templates" Margin="0,0,0,12">
                    <dxe:ListBoxEdit x:Name="templatesList" ShowBorder="False" SelectedIndex="0" Background="{x:Null}" SelectedIndexChanged="templatesList_SelectedIndexChanged">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <TextBlock Text="Default" />
                            <TextBlock Text="Moon Phase" />
                            <TextBlock Text="Custom Print Theme" />
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
                <Button Content="Print Preview" Click="Button_Click" Height="22" />
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="135" CustomGroupInterval="pivotGrid_CustomGroupInterval" AllowDragInCustomizationForm="False" AllowDrag="False" PrintFieldCellTemplateSelector="{StaticResource cellTemplateSelector}" PrintFieldValueTemplateSelector="{StaticResource fieldValueTemplateSelector}" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="100" Caption="Category Name" />
                <dxpg:PivotGridField x:Name="fieldMoonPhase" FieldName="ShippedDate" Area="ColumnArea" GroupInterval="Custom" Caption="Moon Phase" Width="80" Height="52" ValueTemplate="{StaticResource MoonPhaseTemplate}" PrintValueTemplate="{StaticResource MoonPhaseExportTemplate}" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="ShippedDate" Area="ColumnArea" GroupInterval="DateYear" Caption="Year" Width="80" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="ShippedDate" Area="ColumnArea" GroupInterval="DateQuarter" Caption="Quarter" Width="80" ValueFormat="Quarter {0}" />
                <dxpg:PivotGridField x:Name="fieldSales" FieldName="ProductSales" Area="DataArea" Width="100" Caption="Sales" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!; using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.Printing;
using System;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.Core.Native;
using System.Collections.Generic;
using System.Windows.Media.Imaging;
using System.IO;
using System.Reflection;
using System.Windows.Controls;
using DevExpress.Xpf.PivotGrid.Internal;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.PivotGrid.Printing;
using System.Windows.Data;

namespace PivotGridDemo.PivotGrid {
    public enum MoonPhase {
        NewMoon,
        WaxingCrescentMoon,
        FirstQuarterMoon,
        WaxingGibbousMoon,
        FullMoon,
        WaningGibbousMoon,
        LastQuarterMoon,
        WaningCrescentMoon
    }

    public partial class PrintTemplates:PivotGridDemoModule {
        DataTemplate defaultCellTemplate, defaultValueTemplate, defaultHeaderTemplate;
        DataTemplateSelector defaultCellTemplateSelector, defaultValueTemplateSelector;

        public PrintTemplates() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.ProductReports;
            SaveDefaultTemplates();
            ResetItems();
        }

        void SaveDefaultTemplates() {
            defaultCellTemplate = pivotGrid.PrintFieldCellTemplate;
            defaultValueTemplate = pivotGrid.PrintFieldValueTemplate;
            defaultHeaderTemplate = pivotGrid.PrintFieldHeaderTemplate;
            defaultCellTemplateSelector = pivotGrid.PrintFieldCellTemplateSelector;
            defaultValueTemplateSelector = pivotGrid.PrintFieldValueTemplateSelector;
        }

        void Button_Click(object sender, RoutedEventArgs e) {
            ShowPrintPreview(pivotGrid);
        }

        void pivotGrid_CustomGroupInterval(object sender, PivotCustomGroupIntervalEventArgs e) {
            DateTime date = (DateTime)e.Value;
            e.GroupValue = CalculateMoonPhase(date.Year, date.Month, date.Day);
        }

        static double GetFracPart(double value) {
            return value - Convert.ToDouble(Decimal.Truncate(Convert.ToDecimal(value)));
        }
        static MoonPhase MoonPhaseFromInt(int phase) {
            switch(phase) {
                case 0:
                    return MoonPhase.NewMoon;
                case 1:
                    return MoonPhase.WaxingCrescentMoon;
                case 2:
                    return MoonPhase.FirstQuarterMoon;
                case 3:
                    return MoonPhase.WaxingGibbousMoon;
                case 4:
                    return MoonPhase.FullMoon;
                case 5:
                    return MoonPhase.WaningGibbousMoon;
                case 6:
                    return MoonPhase.LastQuarterMoon;
                case 7:
                    return MoonPhase.WaningCrescentMoon;
                default:
                    throw new ArgumentException("Phase must be between 0 and 7", "phase");
            }
        }

        MoonPhase CalculateMoonPhase(int year, int month, int day) {
            double moonCycle = 29.53;
            double daysInMonth = 30.6;
            double daysInYear = 365.25;
            int phasesCount = 8;

            if(month < 3) {
                year--;
                month += 12;
            }
            month++;
            double totalDaysElapsed = daysInYear * year + daysInMonth * month + day - 694039.09;
            double phase = totalDaysElapsed / moonCycle;
            int result = (int)Math.Round(GetFracPart(phase) * phasesCount);
            return MoonPhaseFromInt(result == phasesCount ? 0 : result);
        }

        void ResetItems() {
            fieldCategory.Area = FieldArea.RowArea;
            fieldMoonPhase.Area = FieldArea.ColumnArea;
            fieldMoonPhase.Visible = false;
            fieldMoonPhase.FilterValues.Clear();
            fieldYear.Area = FieldArea.ColumnArea;
            fieldYear.Visible = true;
            fieldYear.AreaIndex = 0;
            fieldYear.FilterValues.Clear();
            fieldQuarter.Area = FieldArea.ColumnArea;
            fieldQuarter.Visible = true;
            fieldQuarter.AreaIndex = 1;
            fieldQuarter.FilterValues.Clear();
            fieldSales.Area = FieldArea.DataArea;
            fieldSales.Visible = true;
            fieldSales.FilterValues.Clear();
            if(defaultCellTemplate == null) return;
            pivotGrid.PrintFieldCellTemplate = defaultCellTemplate;
            pivotGrid.PrintFieldValueTemplate = defaultValueTemplate;
            pivotGrid.PrintFieldHeaderTemplate = defaultHeaderTemplate;
            pivotGrid.PrintFieldCellTemplateSelector = null;
            pivotGrid.PrintFieldValueTemplateSelector = null;
        }

        void templatesList_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            ResetItems();
            if(templatesList.SelectedIndex == 1) {
                fieldYear.Visible = false;
                fieldQuarter.Visible = false;
                fieldMoonPhase.Visible = true;
            }
            if(templatesList.SelectedIndex == 2) {
                pivotGrid.PrintFieldCellTemplateSelector = defaultCellTemplateSelector;
                pivotGrid.PrintFieldValueTemplateSelector = defaultValueTemplateSelector;
                pivotGrid.PrintFieldCellTemplate = null;
                pivotGrid.PrintFieldValueTemplate = null;
                pivotGrid.PrintFieldHeaderTemplate = (DataTemplate)this.FindResource("headerTemplate");
            }
        }
    }

    public class CellTemplateSelector : DataTemplateSelector {

        public override DataTemplate SelectTemplate(object item, DependencyObject container) {
            PrintCellsAreaItem cellItem = item as PrintCellsAreaItem;
            if(cellItem == null)
                return base.SelectTemplate(item, container);
            else
                return cellItem.IsTotalAppearance ? CellTotalTemplate : CellTemplate;
        }

        public DataTemplate CellTemplate { get; set; }
        public DataTemplate CellTotalTemplate { get; set; }
    }

    public class FieldValueTemplateSelector : DataTemplateSelector {

        public override DataTemplate SelectTemplate(object item, DependencyObject container) {
            PrintFieldValueItem cellItem = item as PrintFieldValueItem;
            if(cellItem == null)
                return base.SelectTemplate(item, container);
            else
                return cellItem.IsTotalAppearance ? ValueTotalTemplate : ValueTemplate;
        }

        public DataTemplate ValueTemplate { get; set; }
        public DataTemplate ValueTotalTemplate { get; set; }
    }

    public class MoonPhaseImageConverter : IValueConverter {

        static Dictionary<string, BitmapImage> images = new Dictionary<string, BitmapImage>();
        static BitmapImage LoadImage(string imageName) {
            return new BitmapImage(new Uri(string.Format(@"/PivotGridDemo;component/Images/MoonPhase/{0}.png", imageName), UriKind.RelativeOrAbsolute));
        }

        static void image_ImageFailed(object sender, ExceptionRoutedEventArgs e) {
            throw new NotImplementedException();
        }

        static BitmapImage GetImage(string imageName) {
            BitmapImage image = null;
            if(!images.TryGetValue(imageName, out image)) {
                image = LoadImage(imageName);
                images.Add(imageName, image);
            }
            return image;
        }

        #region IValueConverter Members

        object IValueConverter.Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            FieldValueItem item = value as FieldValueItem;
            if(item == null || !(item.Value is MoonPhase))
                return null;
            else
                return GetImage(item.Value.ToString());
        }

        object IValueConverter.ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            throw new NotImplementedException();
        }

        #endregion
    }
}!}<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.ProductReports" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Product Reports">
                    <dxe:ListBoxEdit x:Name="reportsList" ShowBorder="False" SelectedIndex="0" Background="{x:Null}" SelectedIndexChanged="ReportsList_SelectionChanged">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <sys:String>Category Sales</sys:String>
                            <sys:String>Product Sales</sys:String>
                            <sys:String>Interval Grouping</sys:String>
                            <sys:String>Multiple Subtotals</sys:String>
                            <sys:String>Average Sales</sys:String>
                            <sys:String>Top 3 Products</sys:String>
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Options" Margin="0,5,0,0" Name="gbxOptions">
                    <StackPanel>
                        <dxe:CheckEdit IsChecked="True" Content="Show Drill Down Form on Cell Double Click" Name="showDrillDown" />
                        <dxe:CheckEdit Content="Show Categories" Name="cbxShowCategories" Checked="cbxShowCategories_Checked" Unchecked="cbxShowCategories_Checked" Visibility="Collapsed" Margin="0,4,0,0" />
                        <Grid Name="spGroupingLayout" Visibility="Collapsed" Margin="0,4,0,0">
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*" />
                                <ColumnDefinition Width="*" />
                            </Grid.ColumnDefinitions>
                            <TextBlock Text="Grouping Layout" x:Name="tbGroupingLayout" VerticalAlignment="Center" />
                            <dxe:ComboBoxEdit Grid.Column="1" Margin="0,0,0,0" IsTextEditable="False" SelectedIndex="1" SelectedIndexChanged="ComboBoxEdit_SelectedIndexChanged" Name="cbeGroupingLayout">
                                <dxe:ComboBoxEdit.Items>
                                    <sys:String>by Years</sys:String>
                                    <sys:String>by Quarters</sys:String>
                                    <sys:String>by Month</sys:String>
                                    <sys:String>by Years, Quarters, Month</sys:String>
                                </dxe:ComboBoxEdit.Items>
                            </dxe:ComboBoxEdit>
                        </Grid>
                    </StackPanel>
                </dx:GroupFrame>

            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" CellDoubleClick="pivotGrid_CellDblClick" RowTreeWidth="230" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" Width="130" Caption="Category Name" />
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="FilterArea" Width="200" Caption="Product Name" />
                <dxpg:PivotGridField x:Name="fieldSales" CellFormat="c" FieldName="ProductSales" Area="DataArea" Width="135" Caption="Product Sales" />
                <dxpg:PivotGridField x:Name="fieldAverageSale" CellFormat="c" FieldName="ProductSales" Area="DataArea" Width="90" Caption="Average Sale" SummaryType="Average" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldMinimumSale" CellFormat="c" FieldName="ProductSales" Area="DataArea" Width="90" Caption="Minimum Sale" SummaryType="Min" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="ShippedDate" Area="FilterArea" GroupInterval="DateYear" Caption="Shipped Year" Width="150" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="ShippedDate" Area="FilterArea" GroupInterval="DateQuarter" ValueFormat="Qtr {0}" Caption="Shipped Quarter" Width="150" />
                <dxpg:PivotGridField x:Name="fieldMonth" FieldName="ShippedDate" Area="FilterArea" Visible="False" GroupInterval="DateMonth" Caption="Shipped Month" Width="70" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!wusing System;
using System.Windows.Data;
using System.Windows.Markup;
using DevExpress.Xpf.DemoBase;
using System.Windows;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;
using System.Windows.Controls;
using DevExpress.Xpf.Themes;
using DevExpress.Xpf.Grid;


namespace PivotGridDemo.PivotGrid {
    public partial class ProductReports : PivotGridDemoModule {
        public ProductReports() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.ProductReports;
        }
        void ReportsList_SelectionChanged(object sender, RoutedEventArgs e) {
            if(fieldCategory == null) return;

            fieldCategory.Area = FieldArea.RowArea;
            fieldProduct.Area = FieldArea.FilterArea;
            fieldQuarter.Area = FieldArea.FilterArea;
            fieldYear.Area = FieldArea.FilterArea;
            fieldAverageSale.Visible = false;
            fieldMinimumSale.Visible = false;
            fieldProduct.SortByField = null;
            fieldProduct.SortOrder = FieldSortOrder.Ascending;
            fieldProduct.TopValueCount = 0;
            fieldMonth.Area = FieldArea.FilterArea;
            fieldMonth.Visible = false;
            fieldQuarter.Area = FieldArea.FilterArea;
            fieldCategory.TotalsVisibility = FieldTotalsVisibility.AutomaticTotals;
            fieldCategory.CustomTotals.Clear();
            cbxShowCategories.Visibility = System.Windows.Visibility.Collapsed;
            spGroupingLayout.Visibility = System.Windows.Visibility.Collapsed;

            switch(reportsList.SelectedIndex) {
                case 0:
                    fieldCategory.Area = FieldArea.RowArea;
                    fieldProduct.Area = FieldArea.FilterArea;
                    break;
                case 1:
                    fieldCategory.Area = FieldArea.FilterArea;
                    fieldProduct.Area = FieldArea.RowArea;
                    cbxShowCategories.Visibility = System.Windows.Visibility.Visible;
                    break;
                case 2:
                    fieldMonth.Visible = true;
                    fieldCategory.Area = FieldArea.RowArea;
                    fieldProduct.Area = FieldArea.RowArea;
                    fieldQuarter.Area = FieldArea.ColumnArea;
                    fieldProduct.AreaIndex = 1;
                    spGroupingLayout.Visibility = System.Windows.Visibility.Visible;
                    ComboBoxEdit_SelectedIndexChanged(cbeGroupingLayout, e);
                    break;
                case 3:
                    fieldCategory.TotalsVisibility = FieldTotalsVisibility.CustomTotals;
                    fieldCategory.Area = FieldArea.RowArea;
                    fieldProduct.Area = FieldArea.RowArea;
                    fieldCategory.CustomTotals.Add(FieldSummaryType.Average);
                    fieldCategory.CustomTotals.Add(FieldSummaryType.Sum);
                    fieldCategory.CustomTotals.Add(FieldSummaryType.Max);
                    fieldCategory.CustomTotals.Add(FieldSummaryType.Min);
                    fieldMonth.Visible = true;
                    fieldQuarter.Area = FieldArea.ColumnArea;
                    fieldYear.Area = FieldArea.ColumnArea;
                    fieldProduct.AreaIndex = 1;
                    break;
                case 4:
                    fieldQuarter.SetAreaPosition(FieldArea.RowArea, 0);
                    fieldCategory.Area = FieldArea.RowArea;
                    fieldAverageSale.SetAreaPosition(FieldArea.DataArea, 1);
                    fieldMinimumSale.SetAreaPosition(FieldArea.DataArea, 2);
                    fieldAverageSale.Visible = fieldMinimumSale.Visible = true;
                    fieldCategory.AreaIndex = 1;
                    break;
                case 5:
                    fieldProduct.Area = FieldArea.RowArea;
                    fieldCategory.Area = FieldArea.RowArea;
                    fieldProduct.SortByField = fieldSales;
                    fieldProduct.SortOrder = FieldSortOrder.Descending;
                    fieldProduct.TopValueCount = 3;
                    fieldProduct.AreaIndex = 1;
                    break;
            }
        }
        private void cbxShowCategories_Checked(object sender, RoutedEventArgs e) {
            fieldCategory.Area = cbxShowCategories.IsChecked.Value ? FieldArea.RowArea : FieldArea.FilterArea;
            fieldCategory.AreaIndex = 0;
        }
        private void ComboBoxEdit_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            if(fieldMonth == null) return;
            switch(((ComboBoxEdit)sender).SelectedIndex) {
                case 0:
                    fieldQuarter.Area = FieldArea.FilterArea;
                    fieldMonth.Area = FieldArea.FilterArea;
                    fieldYear.Area = FieldArea.ColumnArea;
                    break;
                case 1:
                    fieldYear.Area = FieldArea.FilterArea;
                    fieldMonth.Area = FieldArea.FilterArea;
                    fieldQuarter.Area = FieldArea.ColumnArea;
                    break;
                case 2:
                    fieldYear.Area = FieldArea.FilterArea;
                    fieldQuarter.Area = FieldArea.FilterArea;
                    fieldMonth.Area = FieldArea.ColumnArea;
                    break;
                case 3:
                    fieldYear.Area = FieldArea.ColumnArea;
                    fieldQuarter.Area = FieldArea.ColumnArea;
                    fieldMonth.Area = FieldArea.ColumnArea;
                    break;
            }
        }

        private void pivotGrid_CellDblClick(object sender, PivotCellEventArgs e) {
            if(!showDrillDown.IsChecked.Value) return;
            GridControl grid = new GridControl();
            ThemeManager.SetThemeName(grid, ThemeManager.ApplicationThemeName);
            grid.HorizontalAlignment = HorizontalAlignment.Stretch;
            grid.VerticalAlignment = VerticalAlignment.Stretch;
            PivotDrillDownDataSource ds = e.CreateDrillDownDataSource();
            grid.View = new TableView() { AllowPerPixelScrolling = true };
            grid.ItemsSource = ds;
            grid.PopulateColumns();
            grid.ShowBorder = false;
            FloatingContainer.ShowDialogContent(grid, this, new Size(520, 300),
                new FloatingContainerParameters() {
                    DialogButtons = DialogButtons.Ok,
                    AllowSizing = true,
                    CloseOnEscape = true,
                    Title = "Drill Down Form",
                    ClosedDelegate = null
                });
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.RIAServices" mc:Ignorable="d" d:DesignHeight="400" d:DesignWidth="800"
        xmlns:local="clr-namespace:PivotGridDemo.PivotGrid"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
        xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid"
        xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
        xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
        xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:sys="clr-namespace:System;assembly=mscorlib"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008">
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel>
                <dx:GroupFrame Header="Table">
                    <dx:GroupFrame.IsEnabled>
                        <Binding Path="ShowLoadingPanel">
                            <Binding.Converter>
                                <dx:NegationConverterExtension />
                            </Binding.Converter>
                        </Binding>
                    </dx:GroupFrame.IsEnabled>
                    <dxe:ListBoxEdit Name="listBoxEdit" SelectedIndex="0" ShowBorder="False" Background="{x:Null}">
                        <dxe:ListBoxEdit.StyleSettings>
                            <dxe:RadioListBoxEditStyleSettings />
                        </dxe:ListBoxEdit.StyleSettings>
                        <dxe:ListBoxEdit.Items>
                            <local:PivotRiaConfiguration Caption="Products In Stock" DomainDataSourceQueryName="GetProducts_by_CategoryQuery">
                                <local:PivotRiaConfiguration.Fields>
                                    <dxpg:PivotGridField FieldName="CategoryName" Caption="Category" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ProductName" Caption="Product" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="UnitsInStock" Caption="Units In Stock" Area="DataArea" />
                                </local:PivotRiaConfiguration.Fields>
                            </local:PivotRiaConfiguration>
                            <local:PivotRiaConfiguration Caption="Order Details" DomainDataSourceQueryName="GetOrder_Details_ExtendedQuery">
                                <local:PivotRiaConfiguration.Fields>
                                    <dxpg:PivotGridField FieldName="OrderID" Caption="Order ID" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ProductName" Caption="Product" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="UnitPrice" Caption="Unit Price" Area="DataArea" />
                                    <dxpg:PivotGridField FieldName="Quantity" Caption="Quantity" Area="DataArea" />
                                    <dxpg:PivotGridField FieldName="Discount" Caption="Discount" Area="DataArea" />
                                    <dxpg:PivotGridField FieldName="ExtendedPrice" Caption="Extended Price" Area="DataArea" />
                                </local:PivotRiaConfiguration.Fields>
                            </local:PivotRiaConfiguration>
                            <local:PivotRiaConfiguration Caption="Sales By Date" DomainDataSourceQueryName="GetSummary_of_Sales_by_QuarterQuery">
                                <local:PivotRiaConfiguration.Fields>
                                    <dxpg:PivotGridField FieldName="ShippedDate" GroupInterval="DateYear" Caption="Year" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ShippedDate" GroupInterval="DateQuarter" Caption="Quarter" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ShippedDate" GroupInterval="DateMonth" Caption="Month" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ShippedDate" GroupInterval="DateDay" Caption="Day" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="Subtotal" Caption="Sales" Area="DataArea" />
                                </local:PivotRiaConfiguration.Fields>
                            </local:PivotRiaConfiguration>
                            <local:PivotRiaConfiguration Caption="Company Sales for 1997" DomainDataSourceQueryName="GetSales_Totals_by_AmountQuery">
                                <local:PivotRiaConfiguration.Fields>
                                    <dxpg:PivotGridField FieldName="CompanyName" Caption="Company" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ShippedDate" GroupInterval="DateYear" Caption="Year" Area="ColumnArea" />
                                    <dxpg:PivotGridField FieldName="ShippedDate" GroupInterval="DateQuarter" Caption="Quarter" Area="ColumnArea" />
                                    <dxpg:PivotGridField FieldName="SaleAmount" Caption="Sales" Area="DataArea" />
                                </local:PivotRiaConfiguration.Fields>
                            </local:PivotRiaConfiguration>
                            <local:PivotRiaConfiguration Caption="Product Sales for 1997" DomainDataSourceQueryName="GetProduct_Sales_for_1997Query">
                                <local:PivotRiaConfiguration.Fields>
                                    <dxpg:PivotGridField FieldName="CategoryName" Caption="Category" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ProductName" Caption="Product" Area="RowArea" />
                                    <dxpg:PivotGridField FieldName="ProductSales" Caption="Sales" Area="DataArea" />
                                </local:PivotRiaConfiguration.Fields>
                            </local:PivotRiaConfiguration>
                        </dxe:ListBoxEdit.Items>
                    </dxe:ListBoxEdit>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <Grid>
            <dxpg:PivotGridControl Name="pivotGrid" BestFitMode="VisibleRows" local:RiaServicesBindingHelper.RiaConfiguration="{Binding ElementName=listBoxEdit, Path=SelectedItem}" />
        </Grid>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!Yusing System;
using System.Windows;
using System.ServiceModel.DomainServices.Client;
using DevExpress.Xpf.DemoBase.Web.Services;
using DevExpress.Xpf.DemoBase.Web;
using System.Collections;
using System.Windows.Controls;
using DevExpress.Xpf.PivotGrid;
using System.Collections.Generic;

namespace PivotGridDemo.PivotGrid {
    public partial class RIAServices : PivotGridDemoModule {
        public RIAServices() {
            InitializeComponent();
        }
    }

    public class PivotRiaConfiguration : IEnumerable<PivotGridField> {

        public PivotRiaConfiguration() {
            Fields = new List<PivotGridField>();
        }

        public string Caption { get; set; }
        public string DomainDataSourceQueryName { get; set; }
        public List<PivotGridField> Fields { get; set; }


        public override string ToString() {
            return Caption;
        }

        #region IEnumerable<PivotGridField> Members

        public IEnumerator<PivotGridField> GetEnumerator() {
            return Fields.GetEnumerator();
        }

        #endregion

        #region IEnumerable Members

        IEnumerator IEnumerable.GetEnumerator() {
            return Fields.GetEnumerator();
        }

        #endregion
    }

    public class RiaServicesBindingHelper {
        public static readonly DependencyProperty RiaConfigurationProperty;

        static RiaServicesBindingHelper() {
            RiaConfigurationProperty = DependencyProperty.RegisterAttached("RiaConfiguration", typeof(object), typeof(RiaServicesBindingHelper), new PropertyMetadata(OnRiaConfigurationPropertyChanged));
        }


        public static object GetRiaConfiguration(DependencyObject element) {
            if(element == null || element as PivotGridControl == null)
                throw new ArgumentNullException("element");
            return (bool)((PivotGridControl)element).GetValue(RiaConfigurationProperty);
        }

        public static void SetRiaConfiguration(DependencyObject element, object value) {
            if(element == null || element as PivotGridControl == null)
                throw new ArgumentNullException("element");
            element.SetValue(RiaConfigurationProperty, value);
        }

        static NWindDomainContext DomainContext = new NWindDomainContext();
        static PivotGridControl CurrentPivotGrid;
        static DomainDataSource CurrentDataSource;

        static void OnRiaConfigurationPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
            PivotGridControl pivotGrid = d as PivotGridControl;
            pivotGrid.DataContext = DomainContext;
            PivotRiaConfiguration conf = e.NewValue as PivotRiaConfiguration;
            DomainDataSource dds = new DomainDataSource();
            CurrentPivotGrid = pivotGrid;
            CurrentDataSource = dds;
            dds.LoadedData += new EventHandler<LoadedDataEventArgs>(dds_LoadedData);
            dds.DomainContext = DomainContext;
            dds.QueryName = conf.DomainDataSourceQueryName;
            pivotGrid.BeginUpdate();
            pivotGrid.Fields.Clear();
            pivotGrid.Fields.AddRange(conf);
            pivotGrid.DataSource = dds.DataView;
            dds.Load();
            pivotGrid.EndUpdate();
        }

        static void dds_LoadedData(object sender, LoadedDataEventArgs e) {
            if(e.HasError) {
                MessageBox.Show("Connection could not be established." + Environment.NewLine + e.Error.Message, "Connection Error", MessageBoxButton.OK);
                e.MarkErrorAsHandled();
            } else {
                DomainDataSource ds = sender as DomainDataSource;
                if(CurrentPivotGrid != null && ds == CurrentDataSource)
                    CurrentPivotGrid.BestFit(true, false);
            }
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.Serialization" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:collections="clr-namespace:System.Collections;assembly=mscorlib" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Layout">
                    <StackPanel>
                        <Button Content="Save Layout" Click="SaveLayoutButton_Click" Margin="0,0,0,4" />
                        <Button Content="Restore Layout" Click="RestoreLayoutButton_Click" IsEnabled="False" Name="restoreLayoutButton" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Layout Samples" Margin="0,5,0,0">
                    <StackPanel>
                        <StackPanel Orientation="Horizontal" Margin="0,0,0,4">
                            <TextBlock Text="Select:" VerticalAlignment="Center" Margin="0,0,4,0" />
                            <dxe:ComboBoxEdit Width="100" Name="layoutSamplesComboBox" IsTextEditable="False">
                                <dxe:ComboBoxEdit.Items>
                                </dxe:ComboBoxEdit.Items>
                            </dxe:ComboBoxEdit>
                        </StackPanel>
                        <Button Content="Load" Click="LoadSampleButton_Click" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="230" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" Width="80" Caption="Order Year" SortOrder="Descending" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateQuarter" ValueFormat="Qtr {0}" Width="90" Caption="Order Quarter" />
                <dxpg:PivotGridField x:Name="fieldMonth" FieldName="OrderDate" Area="FilterArea" GroupInterval="DateMonth" Width="80" Caption="Order Month" />
                <dxpg:PivotGridField x:Name="fieldCompanyName" FieldName="CompanyName" Area="RowArea" Width="150" Caption="Customer" />
                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" Width="120" Caption="Product Name" />
                <dxpg:PivotGridField x:Name="fieldProductAmount" FieldName="ProductAmount" Area="DataArea" Width="70" Caption="Product Amount" CellFormat="c" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!using System;
using System.Collections.Generic;
using System.IO;
using System.Reflection;
using System.Windows;
using DevExpress.Xpf.Core;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.DemoBase.Helpers;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class Serialization : PivotGridDemoModule {
        MemoryStream currentLayoutStream;

        public Serialization() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.CustomerReports;

        }

        private void LoadSampleButton_Click(object sender, RoutedEventArgs e) {
            RestoreLayout(((LayoutSampleBase)layoutSamplesComboBox.SelectedItem).GetStream());
            pivotGrid.BestFit(FieldArea.RowArea, true, false);
            pivotGrid.BestFitColumn(pivotGrid.ColumnCount - 1);
        }

        private void SaveLayoutButton_Click(object sender, RoutedEventArgs e) {
            currentLayoutStream = SaveLayout();
            restoreLayoutButton.IsEnabled = true;
        }

        private void RestoreLayoutButton_Click(object sender, RoutedEventArgs e) {
            RestoreLayout(currentLayoutStream);
        }


        private void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            List<LayoutSampleBase> layoutSamples = new List<LayoutSampleBase>();
            layoutSamples.Add(new MemoryStreamLayoutSample("Original", SaveLayout()));
            Assembly assembly = typeof(Serialization).Assembly;
            layoutSamples.Add(new ResourceLayoutSample("Brief view", DemoHelper.GetPath("PivotGridDemo.Data.LayoutSamples.", assembly) + "BriefView.xml"));
            layoutSamples.Add(new ResourceLayoutSample("Full view", DemoHelper.GetPath("PivotGridDemo.Data.LayoutSamples.", assembly) + "FullView.xml"));
            layoutSamplesComboBox.ItemsSource = layoutSamples;
            layoutSamplesComboBox.SelectedIndex = 0;
        }

        MemoryStream SaveLayout() {
            MemoryStream stream = new MemoryStream();
            pivotGrid.SaveLayoutToStream(stream);
            return stream;
        }
        void RestoreLayout(Stream stream) {
            if(stream == null)
                return;
            stream.Position = 0;
            pivotGrid.RestoreLayoutFromStream(stream);
        }

        public abstract class LayoutSampleBase {
            readonly string description;
            public LayoutSampleBase(string description) {
                this.description = description;
            }
            public abstract Stream GetStream();
            public override string ToString() {
                return description;
            }
        }
        public class ResourceLayoutSample : LayoutSampleBase {
            readonly string resourcePath;
            public ResourceLayoutSample(string description, string resourcePath)
                : base(description) {
                this.resourcePath = resourcePath;
            }
            public override Stream GetStream() {
                return Assembly.GetExecutingAssembly().GetManifestResourceStream(resourcePath);
            }
        }
        public class MemoryStreamLayoutSample : LayoutSampleBase {
            readonly MemoryStream stream;
            public MemoryStreamLayoutSample(string description, MemoryStream stream)
                : base(description) {
                this.stream = stream;
            }
            public override Stream GetStream() {
                return stream;
            }
        }


    }
}!p<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.SingleTotal" Height="300" Width="300" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" MinWidth="240">
                <dx:GroupFrame Header="DataField Summary Settings" Margin="0,0,0,8">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*" />
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                        <TextBlock Grid.Column="0" Grid.Row="0" VerticalAlignment="Center" Margin="0,0,8,4">Field:</TextBlock>
                        <dxe:ComboBoxEdit Grid.Column="1" Grid.Row="0" Name="cbField" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="0,0,0,4" IsTextEditable="False" Width="85" SelectedIndexChanged="cbField_SelectedIndexChanged" />
                        <TextBlock Grid.Column="0" Grid.Row="1" VerticalAlignment="Center" Margin="0,0,8,0">Summary Type:</TextBlock>
                        <dxe:ComboBoxEdit Grid.Column="1" Grid.Row="1" Name="cbSummaryType" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Width="85" SelectedIndexChanged="cbSummaryType_SelectedIndexChanged" />
                    </Grid>
                </dx:GroupFrame>
                <dx:GroupFrame Header="View Options" VerticalAlignment="Stretch">
                    <StackPanel>

                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowColumnGrandTotalHeader, Mode=TwoWay}" Content="Show Column Grand Total Header" Name="ceShowColumnGrandTotalHeader" Height="16" Margin="0,0,0,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowColumnGrandTotals, Mode=TwoWay}" Content="Show Column Grand Totals" Name="ceShowColumnGrandTotals" Height="16" Margin="0,0,0,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowColumnTotals, Mode=TwoWay}" Content="Show Column Totals" Name="ceShowColumnTotals" Height="16" Margin="0,0,0,4" />

                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowRowGrandTotalHeader, Mode=TwoWay}" Content="Show Row Grand Total Header" Name="ceShowRowGrandTotalHeader" Height="16" Margin="0,0,0,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowRowGrandTotals, Mode=TwoWay}" Content="Show Row Grand Totals" Name="ceShowRowGrandTotals" Height="16" Margin="0,0,0,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowRowTotals, Mode=TwoWay}" Content="Show Row Totals" Name="ceShowRowTotals" Height="16" Margin="0,0,0,4" />

                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowGrandTotalsForSingleValues, Mode=TwoWay}" Content="Show Grand Totals For Single Values" Name="ceShowGrandTotalsForSingleValues" Height="16" Margin="0,0,0,4" />
                        <dxe:CheckEdit IsChecked="{Binding ElementName=pivotGrid, Path=ShowTotalsForSingleValues, Mode=TwoWay}" Content="Show Totals For Single Values" Name="ceShowTotalsForSingleValues" Height="16" Margin="0,0,0,4" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" CustomSummary="OnPivotGridCustomSummary" RowTotalsLocation="Far" RowTreeWidth="305" ShowBorder="False" VerticalAlignment="Stretch" ShowColumnGrandTotals="False" ShowFilterHeaders="False" DataFieldAreaIndex="2" DataFieldArea="ColumnArea" DataFieldCaption="Data" SummaryDataSourceFieldNaming="FieldName" Loaded="pivotGrid_Loaded">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldProduct" FieldName="ProductName" Area="RowArea" AreaIndex="1" Width="215" Caption="Product Name" />
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" AreaIndex="0" Width="130" Caption="Category Name" />
                <dxpg:PivotGridField x:Name="fieldQuarter" ValueFormat="Quarter {0}" FieldName="OrderDate" AreaIndex="1" Area="ColumnArea" GroupInterval="DateQuarter" Width="80" Caption="Quarter" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" GroupInterval="DateYear" AreaIndex="0" Width="80" Caption="Year" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" SummaryType="Sum" ShowSummaryTypeName="True" AreaIndex="1" Area="DataArea" Width="70" Caption="Quantity" />
                <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" SummaryType="Average" ShowSummaryTypeName="True" AreaIndex="2" Area="DataArea" Width="70" Caption="Discount" CellFormat="p" ValueFormat="p" />
                <dxpg:PivotGridField x:Name="fieldUnitPrice" FieldName="UnitPrice" SummaryType="Max" ShowSummaryTypeName="True" AreaIndex="0" Area="DataArea" Width="130" Caption="Unit Price" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!}	using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using System.Windows.Data;
using System.Windows.Media;
using System.Windows.Markup;
using System.Windows.Controls;
using DevExpress.Data.Mask;

namespace PivotGridDemo.PivotGrid {
    public partial class SingleTotal : PivotGridDemoModule {
        public SingleTotal() {
            InitializeComponent();
            pivotGrid.BeginUpdate();
            pivotGrid.AllowCrossGroupVariation = false;
            pivotGrid.DataSource = NWindData.SalesPerson;
            fieldYear.FilterValues.FilterType = FieldFilterType.Included;
            fieldYear.FilterValues.Add(1995);
            fieldYear.FilterValues.Add(1994);
            fieldCategory.FilterValues.FilterType = FieldFilterType.Included;
            fieldCategory.FilterValues.Add("Beverages");
            fieldCategory.FilterValues.Add("Condiments");
            pivotGrid.EndUpdate();
            InitComboBoxes();
        }
        void pivotGrid_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(FieldArea.ColumnArea, true, false);
        }
        void InitComboBoxes() {
            Array arr = EnumHelper.GetValues(typeof(FieldSummaryType));
            foreach(FieldSummaryType type in arr)
                cbSummaryType.Items.Add(type);
            foreach(PivotGridField field in pivotGrid.Fields)
                if(field.Area == FieldArea.DataArea && field.Visible) {
                    cbField.Items.Add(field.Caption);
                }
            cbField.SelectedIndex = 0;
        }
        void cbField_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            foreach(PivotGridField field in pivotGrid.Fields)
                if(field.Caption == cbField.SelectedItem.ToString())
                    cbSummaryType.SelectedIndex = cbSummaryType.Items.IndexOf(field.SummaryType);
        }
        void cbSummaryType_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            foreach(PivotGridField field in pivotGrid.Fields)
                if(field.Caption == cbField.SelectedItem.ToString())
                    field.SummaryType = (FieldSummaryType)cbSummaryType.SelectedItem;
        }

        void OnPivotGridCustomSummary(object sender, PivotCustomSummaryEventArgs e) {
            e.CustomValue = e.SummaryValue.Summary;
        }
    }

}!<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.SortBySummary" Height="300" Width="400" Loaded="PivotGridDemoModule_Loaded" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="FieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Person.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Padding="18,0,0,0" Name="textBlock" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Sorting Settings" Margin="0,0,0,8">
                    <StackPanel Orientation="Vertical">
                        <TextBlock VerticalAlignment="Center">Sort the "Sales Person" field by:</TextBlock>
                        <dxe:ComboBoxEdit Name="cbField" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" Margin="0,4,0,0" SelectedIndexChanged="cbField_SelectedIndexChanged" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="220" VerticalAlignment="Stretch" ShowColumnHeaders="False" ShowBorder="False" Loaded="pivotGrid_Loaded">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="RowArea" AreaIndex="0" UnboundFieldName="fieldQuarter" GroupInterval="DateMonth" Width="130" Caption="Order Month" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="RowArea" AreaIndex="1" Width="130" Caption="Sales Person" SortByField="{Binding ElementName=fieldExtendedPrice}" SortOrder="Descending" HeaderTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" HeaderListTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" />


                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" Caption="Order Amount" CellFormat="c" />

                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" AreaIndex="0" GroupInterval="DateYear" UnboundFieldName="fieldYear" Caption="Order Year" />
                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" AreaIndex="1" Caption="Quantity" />
                <dxpg:PivotGridField x:Name="fieldDiscount" FieldName="Discount" Area="DataArea" AreaIndex="2" Caption="Discount (Avg)" CellFormat="p" SummaryType="Average" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!Tusing System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.Editors;

namespace PivotGridDemo.PivotGrid {
    public partial class SortBySummary : PivotGridDemoModule {
        public SortBySummary() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
        void PivotGridDemoModule_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BeginUpdate();
            fieldYear.FilterValues.FilterType = FieldFilterType.Included;
            fieldYear.FilterValues.Add(1995);
            pivotGrid.EndUpdate();
        }
        void pivotGrid_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(FieldArea.ColumnArea, true, false);
            InitComboBoxes();
        }
        void InitComboBoxes() {
            foreach(PivotGridField field in pivotGrid.Fields)
                if(field.Area == FieldArea.DataArea) {
                    cbField.Items.Add(new ComboBoxEditItem() { Content = field.Caption.ToString(), Tag = field });
                    if(object.ReferenceEquals(field, fieldSalesPerson.SortByField))
                        cbField.SelectedItem = cbField.Items[cbField.Items.Count - 1];
                }
            cbField.SelectedIndex = 0;
        }
        void cbField_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            if(cbField.SelectedIndex < 0)
                return;
            fieldSalesPerson.SortByField = (PivotGridField)((ComboBoxEditItem)cbField.SelectedItem).Tag;
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.SummaryDisplayMode" Height="300" Width="300" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Variation Options" Margin="0,0,0,8">
                    <StackPanel Orientation="Vertical">
                        <dxe:CheckEdit Name="checkAllowCrossGroupVariation" Margin="0,0,0,8" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Allow cross-group variation" Checked="checkAllowCrossGroupVariation_Checked" Unchecked="checkAllowCrossGroupVariation_Unchecked" />
                        <dxe:CheckEdit Name="checkHideEmptyVariationItems" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Hide empty variation items" Checked="checkHideEmptyVariationItems_Checked" Unchecked="checkHideEmptyVariationItems_Unchecked" />
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Summary Display Type" VerticalAlignment="Stretch">
                    <dxe:ComboBoxEdit Name="cbSummaryDisplayType" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" SelectedIndexChanged="cbSummaryDisplayType_SelectedIndexChanged" />
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="130" VerticalAlignment="Stretch" CustomCellAppearance="OnCustomAppearance" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="ColumnArea" AreaIndex="0" Width="130" Caption="Category" />
                <dxpg:PivotGridField x:Name="fieldDate" FieldName="OrderDate" Area="ColumnArea" AreaIndex="1" GroupInterval="DateMonth" Width="80" Caption="Month" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="RowArea" AreaIndex="0" Width="130" Caption="Sales Person" />

                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" AreaIndex="0" Width="70" Caption="Qty" />
                <dxpg:PivotGridField x:Name="fieldQuantity1" FieldName="Quantity" Area="DataArea" AreaIndex="1" Width="80" SummaryDisplayType="AbsoluteVariation" Caption="Qty" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using System.Windows.Data;
using System.Windows.Media;
using System.Windows.Markup;
using System.Windows.Controls;
using DevExpress.Data.Mask;

namespace PivotGridDemo.PivotGrid {
    public partial class SummaryDisplayMode : PivotGridDemoModule {
        static SummaryDisplayMode() {
            Type ownerType = typeof(SummaryDisplayMode);
        }
        public SummaryDisplayMode() {
            InitializeComponent();
            InitComboBox();
            pivotGrid.AllowCrossGroupVariation = false;
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
        void InitComboBox() {
            Array arr = EnumHelper.GetValues(typeof(FieldSummaryDisplayType));
            foreach(FieldSummaryDisplayType type in arr)
                cbSummaryDisplayType.Items.Add(type.ToString());
            cbSummaryDisplayType.SelectedIndex = 1;
        }
        private void checkAllowCrossGroupVariation_Checked(object sender, RoutedEventArgs e) {
            pivotGrid.AllowCrossGroupVariation = true;
        }
        private void checkAllowCrossGroupVariation_Unchecked(object sender, RoutedEventArgs e) {
            pivotGrid.AllowCrossGroupVariation = false;
        }
        private void checkHideEmptyVariationItems_Checked(object sender, RoutedEventArgs e) {
            fieldQuantity1.HideEmptyVariationItems = true;
        }
        private void checkHideEmptyVariationItems_Unchecked(object sender, RoutedEventArgs e) {
            fieldQuantity1.HideEmptyVariationItems = false;
        }
        private void cbSummaryDisplayType_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            string value = cbSummaryDisplayType.SelectedItem.ToString();
            fieldQuantity1.SummaryDisplayType = (FieldSummaryDisplayType)Enum.Parse(typeof(FieldSummaryDisplayType), value, false);
            fieldQuantity1.Caption = FieldVariationCaption(fieldQuantity1.SummaryDisplayType);
        }

        void OnCustomAppearance(object sender, PivotCustomCellAppearanceEventArgs e) {
            if(!(e.Value is decimal)) return;
            if(e.DataField.Equals(fieldQuantity1)) {
                if((decimal)e.Value >= 0)
                    e.Foreground = new SolidColorBrush(Colors.Blue);
                else
                    e.Foreground = new SolidColorBrush(Colors.Red);
            }
        }
        string FieldVariationCaption(FieldSummaryDisplayType displayType) {
            switch(displayType){
                case FieldSummaryDisplayType.AbsoluteVariation:
                    return "Qty (Var)";
                case FieldSummaryDisplayType.PercentVariation:
                case FieldSummaryDisplayType.PercentOfColumn:
                case FieldSummaryDisplayType.PercentOfColumnGrandTotal:
                case FieldSummaryDisplayType.PercentOfGrandTotal:
                case FieldSummaryDisplayType.PercentOfRow:
                case FieldSummaryDisplayType.PercentOfRowGrandTotal:
                    return "Qty (%)";
                case FieldSummaryDisplayType.RankInColumnLargestToSmallest:
                case FieldSummaryDisplayType.RankInColumnSmallestToLargest:
                case FieldSummaryDisplayType.RankInRowLargestToSmallest:
                case FieldSummaryDisplayType.RankInRowSmallestToLargest:
                    return "Qty (Rank)";
                case FieldSummaryDisplayType.Index:
                    return "Qty (Index)";
                case FieldSummaryDisplayType.Default:
                default:
                    return "Qty";
            }
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.TopValues" Height="300" Width="300" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical">
                <dx:GroupFrame Header="Set Top Values" VerticalAlignment="Stretch">
                    <StackPanel Orientation="Vertical">
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Margin="0,0,7,0" VerticalAlignment="Center" FlowDirection="LeftToRight">Show top</TextBlock>
                            <dxe:SpinEdit Name="seTopValuesCount" FlowDirection="LeftToRight" Value="5" MinValue="1" MaxValue="30" Mask="N00" VerticalAlignment="Top" EditValueChanged="seTopValuesCount_EditValueChanged" Width="60" />
                        </StackPanel>
                        <TextBlock Text="values for the field:" Margin="0,5,0,5" HorizontalAlignment="Left" />
                        <dxe:ComboBoxEdit Name="cbField" Width="120" HorizontalAlignment="Left" SelectedIndexChanged="cbField_SelectedIndexChanged" IsTextEditable="False" />
                        <dxe:CheckEdit Name="checkTopValueShowOthers" Height="25" Content="Show Others Value" Checked="checkTopValueShowOthers_Checked" Unchecked="checkTopValueShowOthers_Unchecked" Margin="0,10,0,0" />
                    </StackPanel>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" VerticalAlignment="Stretch" ShowBorder="False" Loaded="pivotGrid_Loaded" RowTreeWidth="200">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldOrderID" FieldName="OrderID" Area="RowArea" AreaIndex="0" Caption="Order ID" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="0" Caption="Order Amount" Width="120" />

                <dxpg:PivotGridField x:Name="fieldCategoryName" FieldName="CategoryName" Area="RowArea" AreaIndex="1" Caption="Category Name" Width="160" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="RowArea" AreaIndex="2" Caption="Sales Person" Width="140" />

                <dxpg:PivotGridField x:Name="fieldProductName" FieldName="ProductName" Area="RowArea" AreaIndex="3" Caption="Product Name" Width="180" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�
using System;
using System.Windows;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;

namespace PivotGridDemo.PivotGrid {
    public partial class TopValues : PivotGridDemoModule {
        static TopValues() {
            Type ownerType = typeof(TopValues);
        }
        public TopValues() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
            InitComboBoxes();
            cbField.SelectedIndex = cbField.Items.Count - 1;
        }
        void pivotGrid_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(true, false);
        }
        void InitComboBoxes() {
            foreach(PivotGridField field in pivotGrid.Fields) {
                if(field.Area == FieldArea.RowArea || field.Area == FieldArea.ColumnArea)
                    cbField.Items.Add(field.Caption);
            }
        }
        void checkTopValueShowOthers_Checked(object sender, RoutedEventArgs e) {
            SetFieldTop();
        }
        void checkTopValueShowOthers_Unchecked(object sender, RoutedEventArgs e) {
            SetFieldTop();
        }
        void cbField_SelectedIndexChanged(object sender, RoutedEventArgs e) {
            SetFieldTop();
            HideRowAreaFields();
        }
        void seTopValuesCount_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e) {
            SetFieldTop();
            pivotGrid.BestFit(true, false);
        }
        void SetFieldTop() {
            if(pivotGrid == null) return;
            pivotGrid.BeginUpdate();
            foreach(PivotGridField field in pivotGrid.Fields) {
                if(field.Caption == cbField.SelectedItem.ToString()) {
                    field.Visible = true;
                    field.SortOrder = FieldSortOrder.Descending;
                    field.SortByField = fieldExtendedPrice;
                    field.TopValueCount = Convert.ToInt32(seTopValuesCount.Value);
                    field.TopValueShowOthers = checkTopValueShowOthers.IsChecked.Value;
                } else {
                    field.TopValueCount = 0;
                }
            }
            pivotGrid.EndUpdate();
        }

        void HideRowAreaFields() {
            if(pivotGrid == null) return;
            pivotGrid.BeginUpdate();
            foreach(PivotGridField field in pivotGrid.Fields) {
                if(field.Caption == cbField.SelectedItem.ToString()) {
                } else {
                    if(field.Area == FieldArea.ColumnArea || field.Area == FieldArea.RowArea)
                        field.Visible = false;
                }
            }
            pivotGrid.EndUpdate();
        }
    }
}!�<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.TotalsLocation" Height="300" Width="300" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">

    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" Width="290">
                <dx:GroupFrame Header="Totals Location" Margin="0,0,0,8">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*" />
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                        <TextBlock Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" Margin="0,0,4,4">Column Totals Location:</TextBlock>
                        <dxe:ComboBoxEdit Grid.Row="0" Grid.Column="1" Name="cbColumnTotalsLocation" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" SelectedItem="{Binding ElementName=pivotGrid, Path=ColumnTotalsLocation, Mode=TwoWay}" Margin="0,0,0,4" />
                        <TextBlock Grid.Row="1" Grid.Column="0" VerticalAlignment="Center">Row Totals Location:</TextBlock>
                        <dxe:ComboBoxEdit Grid.Row="1" Grid.Column="1" Name="cbRowTotalsLocation" VerticalAlignment="Center" HorizontalAlignment="Stretch" IsTextEditable="False" SelectedItem="{Binding ElementName=pivotGrid, Path=RowTotalsLocation, Mode=TwoWay}" />
                    </Grid>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>

        <dxpg:PivotGridControl x:Name="pivotGrid" local:FieldAreaHelper.FixAreas="True" RowTreeWidth="215" VerticalAlignment="Stretch" ShowBorder="False">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldCategory" FieldName="CategoryName" Area="RowArea" AreaIndex="1" Width="130" Caption="Category" />
                <dxpg:PivotGridField x:Name="fieldYear" FieldName="OrderDate" Area="ColumnArea" AreaIndex="0" GroupInterval="DateYear" Width="80" Caption="Year" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" Area="ColumnArea" AreaIndex="1" GroupInterval="DateQuarter" Width="80" Caption="Quarter" />

                <dxpg:PivotGridField x:Name="fieldSalesPerson" FieldName="SalesPerson" Area="RowArea" AreaIndex="0" Width="130" Caption="Sales Person" />

                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" AreaIndex="0" Width="70" Caption="Quantity" />
            </dxpg:PivotGridControl.Fields>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!�using System;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Data.Mask;

namespace PivotGridDemo.PivotGrid {
    public partial class TotalsLocation : PivotGridDemoModule {
        static TotalsLocation() {
            Type ownerType = typeof(TotalsLocation);
        }
        public TotalsLocation() {
            InitializeComponent();
            InitComboBoxes();
            pivotGrid.DataSource = NWindData.SalesPerson;
        }
        void InitComboBoxes() {
            Array arr = EnumHelper.GetValues(typeof(FieldColumnTotalsLocation));
            foreach(FieldColumnTotalsLocation type in arr)
                cbColumnTotalsLocation.Items.Add(type);
            arr = EnumHelper.GetValues(typeof(FieldRowTotalsLocation));
            foreach(FieldRowTotalsLocation type in arr)
                cbRowTotalsLocation.Items.Add(type);
        }
    }
}!�,<local:PivotGridDemoModule x:Class="PivotGridDemo.PivotGrid.UnboundExpressions" Height="400" Width="500" xmlns:local="clr-namespace:PivotGridDemo.PivotGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxb="http://schemas.devexpress.com/winfx/2008/xaml/bars" xmlns:dxdb="http://schemas.devexpress.com/winfx/2008/xaml/demobase">
    <local:PivotGridDemoModule.Resources>
        <ResourceDictionary>
            <DataTemplate x:Key="FieldHeaderTemplate">
                <dx:SimplePanel>
                    <Image Source="/PivotGridDemo;component/Images/HeaderIcons/Person.png" Stretch="None" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="0,-1,2,-1" />
                    <TextBlock Name="textBlock" Padding="18,0,0,0" Text="{Binding Path=DisplayText, Mode=OneWay}" HorizontalAlignment="Right" Style="{Binding Path=ActualHeaderContentStyle}" />
                </dx:SimplePanel>
            </DataTemplate>
            <DataTemplate x:Key="UnboundFieldTemplate">
                <Button Click="Button_Click" ClickMode="Press">
                    <Button.Template>
                        <ControlTemplate TargetType="Button">
                            <StackPanel Orientation="Horizontal">
                                <VisualStateManager.VisualStateGroups>
                                    <VisualStateGroup x:Name="CommonStates">
                                        <VisualState x:Name="Normal" />
                                        <VisualState x:Name="MouseOver">
                                            <Storyboard>
                                                <ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="PART_Link" Storyboard.TargetProperty="FontStyle">
                                                    <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                                        <DiscreteObjectKeyFrame.Value>
                                                            <FontStyle>Italic</FontStyle>
                                                        </DiscreteObjectKeyFrame.Value>
                                                    </DiscreteObjectKeyFrame>
                                                </ObjectAnimationUsingKeyFrames>
                                                <ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="PART_Link" Storyboard.TargetProperty="Cursor">
                                                    <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                                        <DiscreteObjectKeyFrame.Value>
                                                            <Cursor>Hand</Cursor>
                                                        </DiscreteObjectKeyFrame.Value>
                                                    </DiscreteObjectKeyFrame>
                                                </ObjectAnimationUsingKeyFrames>
                                                <ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="PART_Link" Storyboard.TargetProperty="Foreground">
                                                    <DiscreteObjectKeyFrame KeyTime="00:00:00">
                                                        <DiscreteObjectKeyFrame.Value>
                                                            <SolidColorBrush>Red</SolidColorBrush>
                                                        </DiscreteObjectKeyFrame.Value>
                                                    </DiscreteObjectKeyFrame>
                                                </ObjectAnimationUsingKeyFrames>
                                            </Storyboard>
                                        </VisualState>
                                    </VisualStateGroup>
                                </VisualStateManager.VisualStateGroups>

                                <TextBlock Name="PART_Link" VerticalAlignment="Center" Foreground="{Binding Path=Foreground, Mode=OneWay}" Padding="4,2"  Text="{Binding Path=DisplayText, Mode=OneWay}">
                                </TextBlock>

                            </StackPanel>
                        </ControlTemplate>
                    </Button.Template>
                </Button>
            </DataTemplate>
        </ResourceDictionary>
    </local:PivotGridDemoModule.Resources>
    <dxdb:DemoModuleControl>
        <dxdb:DemoModuleControl.OptionsContent>
            <StackPanel Orientation="Vertical" Width="314">
                <dx:GroupFrame Header="Field Value Format Expressions" Margin="0,0,0,8">
                    <StackPanel Orientation="Horizontal">
                        <TextBlock Grid.Column="0" Grid.Row="0" VerticalAlignment="Center">Sales Person Format:</TextBlock>
                        <dxe:ComboBoxEdit Name="cbSalesPerson" Grid.Column="1" Grid.Row="0" VerticalAlignment="Center" HorizontalAlignment="Stretch" Width="155" IsTextEditable="False" Margin="10,4,0,0" TabIndex="1">
                            <dxe:ComboBoxEditItem Content="First Name + Last Name" Tag="[fieldFirstName] + ' ' + [fieldLastName]" />
                            <dxe:ComboBoxEditItem Content="Last Name + First Name" Tag="[fieldLastName] + ' ' + [fieldFirstName]" />
                            <dxe:ComboBoxEditItem Content="Last Name only" Tag="[fieldLastName]" />
                        </dxe:ComboBoxEdit>
                    </StackPanel>
                </dx:GroupFrame>
                <dx:GroupFrame Header="Add New Summary Expression Bonus" Margin="0,0,0,8">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="Auto" />
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                        <TextBlock VerticalAlignment="Center">Bonus Name:</TextBlock>
                        <dxe:TextEdit Name="teBonusName" Grid.Column="1" TabIndex="2" VerticalAlignment="Center" Height="25" Width="75" Margin="4,4,4,4" EditValueChanging="teBonusName_EditValueChanging" />
                        <Button Name="btnAddField" Grid.Column="2" IsEnabled="False" Margin="4,4,0,4" TabIndex="3" MinWidth="70" Height="25" VerticalAlignment="Center" HorizontalAlignment="Right" Content="Add Bonus" Click="btnAddField_Click" />
                        <TextBlock Grid.Column="0" Grid.Row="1" VerticalAlignment="Center">Internal Expression:</TextBlock>
                        <dxe:ButtonEdit Grid.Column="1" Grid.Row="1" Grid.ColumnSpan="2" Name="beExpression" IsReadOnly="True" IsEnabled="{Binding ElementName=btnAddField, Path=IsEnabled}" TabIndex="4" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="4,4,0,0" Height="25" DefaultButtonClick="beExpression_Click" />
                    </Grid>
                </dx:GroupFrame>
            </StackPanel>
        </dxdb:DemoModuleControl.OptionsContent>
        <dxpg:PivotGridControl x:Name="pivotGrid" RowTreeWidth="180" ShowColumnHeaders="False" ShowDataHeaders="False" ShowBorder="False" ShowFilterHeaders="False" ShowRowGrandTotals="False" VerticalAlignment="Stretch" ShowRowTotals="False" RowTotalsLocation="Near" AllowExpand="False" AllowExpandOnDoubleClick="False" FieldUnboundExpressionChanged="pivotGrid_FieldUnboundExpressionChanged" Loaded="pivotGrid_Loaded" DataFieldUnboundExpressionMode="UseSummaryValues">
            <dxpg:PivotGridControl.Fields>
                <dxpg:PivotGridField x:Name="fieldFirstName" FieldName="FirstName" AreaIndex="0" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldLastName" FieldName="LastName" AreaIndex="0" Visible="False" />
                <dxpg:PivotGridField x:Name="fieldSalesPerson" UnboundFieldName="fSalesPerson" UnboundType="String" Area="RowArea" AreaIndex="0" UnboundExpression="{Binding ElementName=cbSalesPerson, Path=SelectedItem.Tag}" AllowedAreas="RowArea" Width="220" Caption="Sales Person" ValueTemplate="{StaticResource ResourceKey=UnboundFieldTemplate}" HeaderTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" HeaderListTemplate="{StaticResource ResourceKey=FieldHeaderTemplate}" />
                <dxpg:PivotGridField x:Name="fieldQuarter" FieldName="OrderDate" UnboundFieldName="Quarter" Area="RowArea" AreaIndex="1" AllowedAreas="RowArea" GroupInterval="DateQuarter" Width="140" Caption="Quarter" ValueFormat="Qtr {0}" />

                <dxpg:PivotGridField x:Name="fieldExtendedPrice" FieldName="ExtendedPrice" Area="DataArea" AreaIndex="2" AllowedAreas="DataArea" Caption="Extended Price" />

                <dxpg:PivotGridField x:Name="fieldQuantity" FieldName="Quantity" Area="DataArea" AreaIndex="1" AllowedAreas="DataArea" Caption="Quantity" />
                <dxpg:PivotGridField x:Name="fieldOrderCount" FieldName="OrderID" Area="DataArea" AreaIndex="0" AllowedAreas="DataArea" Caption="Order Count" SummaryType="Count" />
                <dxpg:PivotGridField x:Name="fieldNewYearBonus" UnboundFieldName="NewYearBonus" UnboundType="Decimal" UnboundExpression="Iif([fieldQuarter] == 4, Iif([fieldExtendedPrice] &gt; 40000, 600, 400), 0)" Area="DataArea" AreaIndex="3" AllowedAreas="DataArea" Caption="New Year Bonus" ValueTemplate="{StaticResource ResourceKey=UnboundFieldTemplate}" />
                <dxpg:PivotGridField x:Name="fieldOrderCountBonus" UnboundFieldName="OrderCountBonus" UnboundType="Decimal" UnboundExpression="Iif([fieldOrderCount] &gt; 50 and [fieldExtendedPrice] / [fieldOrderCount] &gt; 500, 15 * [fieldExtendedPrice] / [fieldQuantity] , 0)" Area="DataArea" AreaIndex="4" AllowedAreas="DataArea" Caption="Order Count Bonus" ValueTemplate="{StaticResource ResourceKey=UnboundFieldTemplate}" />
            </dxpg:PivotGridControl.Fields>
            <dxpg:PivotGridControl.FieldValueMenuCustomizations>
                <dxb:BarItemLinkSeparator />
                <dxb:BarButtonItem Name="removeBonus" Content="Remove this Bonus" ItemClick="removeBonus_ItemClick" Tag="{Binding Path=(dxpg:PivotGridPopupMenu.GridMenuInfo).ValueItem, RelativeSource={RelativeSource Self}}">
                    <dxb:BarButtonItem.IsVisible>
                        <Binding Path="(dxpg:PivotGridPopupMenu.GridMenuInfo).ValueItem" RelativeSource="{RelativeSource Self}">
                            <Binding.Converter>
                                <local:FieldValueItemToBooleanConverter />
                            </Binding.Converter>
                        </Binding>
                    </dxb:BarButtonItem.IsVisible>
                </dxb:BarButtonItem>
            </dxpg:PivotGridControl.FieldValueMenuCustomizations>
        </dxpg:PivotGridControl>
    </dxdb:DemoModuleControl>
</local:PivotGridDemoModule>!^using System;
using System.Windows;
using System.Windows.Controls;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.PivotGrid;
using DevExpress.Xpf.PivotGrid.Internal;
using System.Windows.Data;
using System.Collections.Generic;
using System.Collections;
using DevExpress.Xpf.Bars;

namespace PivotGridDemo.PivotGrid {
    public partial class UnboundExpressions : PivotGridDemoModule {
        public UnboundExpressions() {
            InitializeComponent();
            pivotGrid.DataSource = NWindData.SalesPerson;
            cbSalesPerson.SelectedIndex = 0;
        }
        void pivotGrid_Loaded(object sender, RoutedEventArgs e) {
            pivotGrid.BestFit(true, false);
            NamesController = CreateNamesController();
            teBonusName.Text = NamesController.GetNextDefaultName();
        }
        NamesController NamesController { get; set; }
        NamesController CreateNamesController() {
            NamesController controller = new NamesController("NewBonus");
            foreach(PivotGridField field in pivotGrid.Fields) {
                controller.RegisterAvailableName(field.FieldName);
                controller.RegisterAvailableName(field.Name);
                controller.RegisterAvailableName(field.ExpressionFieldName);
                controller.RegisterAvailableName(field.UnboundFieldName);
            }
            return controller;
        }
        PivotGridField GetNewInvisibleBonusField() {
            PivotGridField newBonusField = new PivotGridField(teBonusName.Text, FieldArea.DataArea);
            newBonusField.ValueTemplate = (DataTemplate)Resources["UnboundFieldTemplate"];
            newBonusField.Name = "field_" + teBonusName.Text;
            newBonusField.Visible = false;
            newBonusField.UnboundType = FieldUnboundColumnType.Object;
            newBonusField.UnboundExpression = beExpression.Text;
            return newBonusField;
        }
        void beExpression_Click(object sender, System.Windows.RoutedEventArgs e) {
            PivotGridField newBonus = GetNewInvisibleBonusField();
            pivotGrid.Fields.Add(newBonus);
            pivotGrid.ShowUnboundExpressionEditor(newBonus);
            beExpression.Text = newBonus.UnboundExpression;
            pivotGrid.Fields.Remove(newBonus);
        }
        void btnAddField_Click(object sender, System.Windows.RoutedEventArgs e) {
            PivotGridField newBonus = GetNewInvisibleBonusField();
            newBonus.Visible = true;
            pivotGrid.Fields.Add(newBonus);
            NamesController.RegisterAvailableName(newBonus.FieldName);
            teBonusName.Text = NamesController.GetNextDefaultName();
            beExpression.Text = string.Empty;
        }
        void teBonusName_EditValueChanging(object sender, DevExpress.Xpf.Editors.EditValueChangingEventArgs e) {
            btnAddField.IsEnabled = !string.IsNullOrEmpty(e.NewValue as string);
        }
        void pivotGrid_FieldUnboundExpressionChanged(object sender, PivotFieldEventArgs e) {
            if(e.Field != null && !e.Field.Visible && btnAddField.IsEnabled)
                beExpression.Text = e.Field.UnboundExpression;
        }
        private void Button_Click(object sender, RoutedEventArgs e) {
            if(sender is Control) {
                FieldValueItem fieldValueItem = ((sender as Control).DataContext) as FieldValueItem;
                if(fieldValueItem != null && fieldValueItem.Field != null)
                    pivotGrid.ShowUnboundExpressionEditor(fieldValueItem.Field);
            }
        }
        private void removeBonus_ItemClick(object sender, DevExpress.Xpf.Bars.ItemClickEventArgs e) {
            if(sender is BarButtonItem) {
                FieldValueItem fieldValueItem = ((sender as BarButtonItem).Tag) as FieldValueItem;
                if(fieldValueItem != null && fieldValueItem.Field != null) {
                    NamesController.UnRegisterAvailableName(fieldValueItem.Field.FieldName);
                    pivotGrid.Fields.Remove(fieldValueItem.Field);
                }
            }
        }
    }

    public class FieldValueItemToBooleanConverter : IValueConverter {
        #region IValueConverter Members
        object IValueConverter.Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            FieldValueItem item = (FieldValueItem)value;
            return item.Field != null && item.Field.Area == FieldArea.DataArea && item.Field.UnboundType != FieldUnboundColumnType.Bound;
        }
        object IValueConverter.ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) {
            throw new NotImplementedException();
        }
        #endregion
    }

    public class NamesController {
        readonly string DefaultName;
        public NamesController(string defaultName) {
            DefaultName = defaultName;
            AvailableNames = new List<string>();
        }
        List<string> AvailableNames { get; set; }

        public string GetNextDefaultName() {
            int i = 0;
            string name;
            do {
                name = DefaultName + i;
                i++;
            } while(AvailableNames.Contains(name));
            return name;
        }

        public void RegisterAvailableName(string name) {
            AvailableNames.Add(name);
        }

        public void UnRegisterAvailableName(string name) {
            AvailableNames.RemoveAll(delegate(string availableName) {
                return name == availableName;
            });
        }
    }
}!musing System;
using System.Windows;
using DevExpress.DemoData;
using DevExpress.Xpf.DemoBase;
using DevExpress.Xpf.DemoBase.Helpers;
using DevExpress.DemoData.Helpers;
using System.Globalization;
using System.Threading;

namespace PivotGridDemo {
    public class App : Application {
        public App() {
            StartupBase.Run<Startup>(this);
        }
    }
    public class Startup : DemoStartup {
        public static void InitDemo() {
#if !EXTMAP
            Loader.DemoDataAssembly = typeof(DevExpress.DemoData.AssemblyMarker).Assembly;
#endif
        }
        protected override bool GetDebug() {
#if DEBUG
            return true;
#else
            return false;
#endif
        }
        protected override Type GetFixtureTypeForXBAPOrSLTesting() {
            return null;
        }

        protected override Application CreateApplication(Application app) {
            SetCultureInfo();
            return base.CreateApplication(app);
        }

        void SetCultureInfo() {
            CultureInfo demoCI = (CultureInfo)Thread.CurrentThread.CurrentCulture.Clone();
            demoCI.NumberFormat.CurrencyDecimalDigits = 2;
            demoCI.NumberFormat.CurrencyDecimalSeparator = ".";
            demoCI.NumberFormat.CurrencyGroupSeparator = ",";
            demoCI.NumberFormat.CurrencyGroupSizes = new int[] { 3 };
            demoCI.NumberFormat.CurrencyNegativePattern = 0;
            demoCI.NumberFormat.CurrencyPositivePattern = 0;
            demoCI.NumberFormat.CurrencySymbol = "$";
            Thread.CurrentThread.CurrentCulture = demoCI;
        }
    }
}!;using System;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Windows;
using DevExpress.Xpf.DemoBase;

[assembly: AssemblyTitle("DevExpress DXPivotGrid for Silverlight Main Demo")]
[assembly: AssemblyDescription("DevExpress DXPivotGrid for Silverlight Main Demo")]
[assembly: AssemblyProduct("DevExpress DXPivotGrid for Silverlight")]
[assembly: AssemblyTrademark("DevExpress DXPivotGrid for Silverlight")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany(AssemblyInfo.AssemblyCompany)]
[assembly: AssemblyCopyright(AssemblyInfo.AssemblyCopyright)]
[assembly: AssemblyCulture("")]

[assembly: ProductID("DXPivotGrid.Ag")]

[assembly: ComVisible(false)]


[assembly: AssemblyVersion(AssemblyInfo.Version)]
[assembly: AssemblyFileVersion(AssemblyInfo.FileVersion)]<XtraSerializer version="1.0" application="PivotGridControl">
  <property name="#LayoutVersion" isnull="true" />
  <property name="$PivotGridControl" iskey="true" value="PivotGridControl">
    <property name="ShowRowHeaders">true</property>
    <property name="ShowRowGrandTotals">true</property>
    <property name="ShowRowTotals">true</property>
    <property name="TotalsLocation">Far</property>
    <property name="ShowTotalsForSingleValues">true</property>
    <property name="ShowCustomTotalsForSingleValues">false</property>
    <property name="ShowColumnTotals">true</property>
    <property name="ShowDataHeaders">true</property>
    <property name="ShowGrandTotalsForSingleValues">false</property>
    <property name="ShowFilterHeaders">true</property>
    <property name="ShowColumnHeaders">true</property>
    <property name="Fields" iskey="true" value="6">
      <property name="Item1" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName">fieldYear</property>
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Order Year</property>
        <property name="GroupInterval">DateYear</property>
        <property name="FieldName">OrderDate</property>
        <property name="Width">85</property>
        <property name="Height">21</property>
        <property name="Area">ColumnArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldYear</property>
        <property name="SortOrder">Descending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item2" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName">fieldQuarter</property>
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="ValueFormat">Qtr {0}</property>
        <property name="Caption">Order Quarter</property>
        <property name="GroupInterval">DateQuarter</property>
        <property name="FieldName">OrderDate</property>
        <property name="Width">70</property>
        <property name="Height">21</property>
        <property name="Area">FilterArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldQuarter</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item3" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName">fieldMonth</property>
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Order Month</property>
        <property name="GroupInterval">DateMonth</property>
        <property name="FieldName">OrderDate</property>
        <property name="Width">70</property>
        <property name="Height">21</property>
        <property name="Area">FilterArea</property>
        <property name="AreaIndex">1</property>
        <property name="Name">fieldMonth</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item4" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName" />
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Customer</property>
        <property name="FieldName">CompanyName</property>
        <property name="Width">171</property>
        <property name="Height">21</property>
        <property name="Area">RowArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldCompanyName</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item5" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName" />
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Product Name</property>
        <property name="FieldName">ProductName</property>
        <property name="Width">120</property>
        <property name="Height">21</property>
        <property name="Area">FilterArea</property>
        <property name="AreaIndex">2</property>
        <property name="Name">fieldProductName</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item6" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName" />
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="CellFormat">c</property>
        <property name="Caption">Product Amount</property>
        <property name="FieldName">ProductAmount</property>
        <property name="Width">70</property>
        <property name="Height">21</property>
        <property name="Area">DataArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldProductAmount</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
    </property>
    <property name="DrawFocusedCellRect">true</property>
    <property name="ShowColumnGrandTotals">true</property>
    <property name="Groups" iskey="true" value="0" />
  </property>
</XtraSerializer><XtraSerializer version="1.0" application="PivotGridControl">
  <property name="#LayoutVersion" isnull="true" />
  <property name="$PivotGridControl" iskey="true" value="PivotGridControl">
    <property name="ShowRowHeaders">true</property>
    <property name="ShowRowGrandTotals">true</property>
    <property name="ShowRowTotals">true</property>
    <property name="TotalsLocation">Far</property>
    <property name="ShowTotalsForSingleValues">true</property>
    <property name="ShowCustomTotalsForSingleValues">false</property>
    <property name="ShowColumnTotals">true</property>
    <property name="ShowDataHeaders">true</property>
    <property name="ShowGrandTotalsForSingleValues">false</property>
    <property name="ShowFilterHeaders">true</property>
    <property name="ShowColumnHeaders">true</property>
    <property name="Fields" iskey="true" value="6">
      <property name="Item1" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName">fieldYear</property>
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Order Year</property>
        <property name="GroupInterval">DateYear</property>
        <property name="FieldName">OrderDate</property>
        <property name="Width">80</property>
        <property name="Height">21</property>
        <property name="Area">ColumnArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldYear</property>
        <property name="SortOrder">Descending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item2" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName">fieldQuarter</property>
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="ValueFormat">Qtr {0}</property>
        <property name="Caption">Order Quarter</property>
        <property name="GroupInterval">DateQuarter</property>
        <property name="FieldName">OrderDate</property>
        <property name="Width">80</property>
        <property name="Height">21</property>
        <property name="Area">ColumnArea</property>
        <property name="AreaIndex">1</property>
        <property name="Name">fieldQuarter</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item3" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName">fieldMonth</property>
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Order Month</property>
        <property name="GroupInterval">DateMonth</property>
        <property name="FieldName">OrderDate</property>
        <property name="Width">80</property>
        <property name="Height">21</property>
        <property name="Area">ColumnArea</property>
        <property name="AreaIndex">2</property>
        <property name="Name">fieldMonth</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item4" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName" />
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Customer</property>
        <property name="FieldName">CompanyName</property>
        <property name="Width">150</property>
        <property name="Height">21</property>
        <property name="Area">RowArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldCompanyName</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item5" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName" />
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="Caption">Product Name</property>
        <property name="FieldName">ProductName</property>
        <property name="Width">120</property>
        <property name="Height">21</property>
        <property name="Area">RowArea</property>
        <property name="AreaIndex">1</property>
        <property name="Name">fieldProductName</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
      <property name="Item6" isnull="true" iskey="true">
        <property name="Visible">true</property>
        <property name="UnboundFieldName" />
        <property name="SerializedSortByField" isnull="true" />
        <property name="SortByConditions" iskey="true" value="0" />
        <property name="CellFormat">c</property>
        <property name="Caption">Product Amount</property>
        <property name="FieldName">ProductAmount</property>
        <property name="Width">70</property>
        <property name="Height">21</property>
        <property name="Area">DataArea</property>
        <property name="AreaIndex">0</property>
        <property name="Name">fieldProductAmount</property>
        <property name="SortOrder">Ascending</property>
        <property name="SortMode">Default</property>
      </property>
    </property>
    <property name="DrawFocusedCellRect">true</property>
    <property name="ShowColumnGrandTotals">true</property>
    <property name="Groups" iskey="true" value="0" />
  </property>
</XtraSerializer>BSJBv4.0.30319l�K#~L�^#Strings��/#US��#GUID��4#BlobW�	�%3?<��[YqP'H+
5
s[~
������.'5'T�i�����
[n���j�jj?z�j���
'.	m���#
[
'�
�.j���'^��j3jH"�}�Fi�j��'���G���������������\�*
�f2
�����<aa �� ��"��#�2#��#��#'$$V$��%'�%j�&)�*i+i,+�
P,+,&�,&�,--�--�/��1j2�H2��2j�2��5�56�56�596�5R6�5m6�5�6�5�6�5�6�5
�6[7�67�587�5h7U7�|7�7�7�7�7�7'
8'8A8�7m8j�8j�8�8�89j9j/9jU9'j9��9'�9i�9'$:�-:�G:�^::��:	�:	�:	
];[�;�;'�;�;<�*}<e<*�<e<�<e<*�<e<*�<e<*�<e<*=e<>=g=��=��=�
>U7.*>'..>'D>	q>'x>�8�>�>�5�>'�>�?�
b?[l?��?�'�?'�?'�?�!@�O@�8AHAdA�A�A�A�A��AB+B�^BiBi�B�B�B�BC�B2WCHCyC��C�D�0D�\D'cD{D�D�D�D�D�D�D��D7^BE'$E'�E�EF;FzF�F�F�F�F'
G<G��GkG�G��G�G
H�6H�dH��H��H�2�H�H�H��H'I',IISI>IhI��I	�I�J�J	!J	yJ��K�LVL�{L��L�5M�;DM'xM�6�M�MN'bN��N��N�ODOkG�O�O�Oj�O�O��O�P�@P�RP�iP��P��P�:��Q��Q:xRdR:�RdR:�RdR>�RdR>�RdRS	:tSdR:�SdR>�SdR>�SdRdTKT~T'�TKT�TKT�T'�T'U�2�UzU�U'�V'kWIW�W~W�WIW�W~W�W~W�W�)X�YX�~X�S^B�X'B�X'Fc,�X)Y~W&@YtY'.�Y�Y�Y�Y�Y
GZ'Zh[o[~[�[�J�\�\N]�\J]�\D]3]v]�-E-	#Y-
4s-6��?�-A�-G�-!S�-!W��-!2f!6o-8t6-@xB-!U�S-W�d%b�m-g�}-s��-|��-���-���-���-���-��
-��-��$-��+-��:-��F-��N-[-
e-r-%|-%�-)2�-)4$�-!6*�-71�-H7�-!K9-!NC-RI�+!]Q<�^TQ�_Vj-`Xv-s_�-|e�-�p�-�{�-��-!���-!����9���=��T!��*U!��*U!��Q�Q�%Q�7Q�FQ�OQ�\6��6�����	�	
"
8
R
!�
=6�
��i6��6��/
}6m
�6�
�6�6"�:�H�R�`�m�x��i1�����������<�M���H�����������i1�1 �14�S�w��H�������x�����i����
�#�4�L�_�m���H�`�R�x���������������i�3�H���V�h���z����������i��V���V���V���V���Q��������H�x���������i!��H������������i�H�R�`�x��������i6
l5�H�R�`�m�x���C)Q)p-�)�i�2��������5MZm_�_��!����H��������� ���V�h�z���# �2 �����������iH�R�`�x�������p d� d�i!!�H�%!�����>!��iM!i�!!�!!H�R�`�x����������p d� d�!d�iH�R�`�x�������p d� d�iQ��!Q��!Q��!Q��!Q��!T�"�""2!0"��"��#Z$_$_+$�7$-A$!q$�H��i�#Z$_$_�$�$+$�7$-H��$�%�"%�5%�J%�T%�`%��i���%��%H��%�����������i�%�&�H���>!����iH�R�`�x��������i��V�&�V�$&�V�7&�V�H&�V�Z&�V�c&�V�u&�V��&��&�&�&�&':�H�R��'�x���m��i�'(�(�(6
��	*�*�"*�4*�E*-V*H�R�`�m�h*�y*�x������i�*�H��ie+~+�+|6�+�c,�q,��,�(-��-!�-H�x�����������i!�-!�-!�-�8.@.N.�k.��.��.��.��.��.��.�H�`�R���x�������i8.H�������x�����i0�50�R0H�R�g0�����q0��i1�8.1�H�����h������i+1B1H�R�x��������iq22�2!�2	H�# �2 ����������2��2��2��2�i3!!3�31T�$4�T*$4��5P �	�� ��� �(�� �@�� �U�� ���!���
!���!���!���&!���/!��7!��@!�%�H!�2�Q!�F�Y!�X�d!�j�	0"���	�"����"���
8#���
o#���
�#�	�($�	G$�/	h$�@	�$�T	h%�`	�%�x	�%��	��%��	��%��	�!&��	�4&�	�x&�SA�&��	��&��I'��O('��T6'�j�D'����'�Z�'���'�`(�	2�(�M�(�V�(�\T((�mT�&�;��(��	��(���)��	�4)��lF)��pY)��lk)��p~)�
u�)�j� �)�;
� �)�	� p*�`
� �*��	�!�*�	�!+�~
�!9+��
�"d+��
u$�+��
�&�+��	�(�+�	�(w,�=u(�,��	�*�,�b�*�,�|�*�,���+�,���+�,���,�,���,-���-�-��-�-���/�.���/�.���3�.��7�.��	�8�.��	�8�.�%�8�.�@�:8/�J�:�/�W�:�/�x�<L0���>g0���@�0���B�2�$�B�2�3�C04�J�CG4���Ct4���E�5�	�Ej6�_�E�6�o�E8��ED8�	G9��I8:��'Kl:��.L�:�6M�:�	�N;�7JN;�GON;�WO!;�gO*;��	�P2;��	�PP;�%�P�;���R<���T�<��	�T=���T=�.^V$=�afX|>�unZ�>��t[!?��}]<?���^"A��	�^*A���^2A��^;A�
�_CA��_LA��	�`.B�O�`1B�g�`FB�v�b�B���dC���fxC��h�C�9�i@D���jJE��	�jpE���j�E�
�l�E�'�n�E�G�pLF�W�p�F�f�p�G�t�p�H���pI���phI���ptJ��	�pK�.�pK�?�pM�~r@N���tO��	�tO�%�t(O���vP�=v8P�GwjP�PxrP�^x{P��	�y�P��	y�P��z�P�	�{�P��	�{�P��l{�P��p{�P���|�P���~�R��l~,S��l~�S��l~lT�	l~�T�$~�T�/��pU����pV�����W�	��kX��u�xX��	���X��l��X��p��X�l��X�%p��X�-l��X�5p��X�=�Y�S�Y�j��DY�����Y��	���Y��I��Y����Z����pZ�����Z����[�N:�-[��B�Z[��Z�h[����t[����X\�"H��\�"Q��\����@_����c_����j_���m_��	��u_��	���_�@ ���_�R ��5a�@��`a����Tb��	��rb�%���b�� ��Xc�� i��c�� ��Hd����e��	��0e�X!���e�m!���e�|!���e����`g��	���g�����h�G"��h�b"��h�x"���h�	���h��	���h�@ ��i��"���i��"���j��"�xk��"��$l��"���l�#��m�K#���m�Y#�4n�h#���n�~#��o��#��`o��#���o��#��4p�����j�|Q��xl�R��q��	��q��"���q�G"��q��$���q��$���q��#��<r��#���r��#��s�����t��	���t����v�k%��v�@��\v����hw��	���w�%��x��%��x��%���x��%���x�����y��	���y�&���y�����z��	���z�'��&{�&��4{�~�s{�2'��{�>'#��{�O'*�`|�b'���}�m'��0~�����~��'3�-��'<�5��'B�>��'<�F��'B�O��	��X��'3���\(<���n(B����(<����(B����	����=���+)O���G���=)��B��i)��U���	��I��	��]���	��|���)��\���)������)��h���)�,��������	�Ȇ���"���	�5���*=���*F���*N���*W���*W_���*ah��+p��+l���8+v���	�ԇ�,���,�,���,uȈ�-�
,���	�4���	�T��<-����S-����j-�̉�%�h���-�����-����������	��-����+����	�����-�ы��	����-����	������Ќ�� �����-�L��.�̎�.^ ����"����	�"���%�"����$��� �&���-�&,����(
��	�(���	�(<��	�(ē�/�(ғ�8/�*��`/�,���/�.����/�0X���/�2���0�4(����5��	�5 ���	�5l����5|��� �7���0�7����0�9���-�;���0�=$���0�?���0�?�����?���	�?����	�?���� �?�����?~���	�?�����?ٛ�V1�A��j1�A��~1�Bt���1�B���1�B@���1�D����1�FÝ� 2�H��&�JD��[2L�����N��=)�N_��i)�Rf���	�Vn���	V���-3W���@3'W���S3XР�f3X��|3Y&���	�Z5���3�ZK���3�ZN���3JZQ���3BZ`��4�[����	�[�n��	�[�n� T�[�q��	�[�q�=U�[ޠ��	�[��Y\?[444444444$44$4&4+4&4+4+424:4$4$44<4HD44$444:4$4J4<4<44:4$44$4:4$44444$44U4`4j44U4`4j4r44$44$44$44$44$4�44$4�4�4�4�4�4�4�4�4�4444$44$44$44$44$4�4�4�4�4444$44$44$44$4�4�44$44$44$44$44$44$4�4�44�4r444$4�4554$4:4$44444$44$44$44$44$44$4:44$45 5 54U4`4j44U4`4j4r44$44$44$44$44$44$44$44$4+4'54$4854$4>5244$4R54$4$4f5n5+4+44$44$44$4$4f5n54$44$44$44$4q5v54$44$44$44�5�5�5�54$4�4�544�4�544�44$4�44U4`4j44U4`4j44$44$44$44$4444<4<44:4$44$44$44$44$44$4�-�-�-�-�-�-4$44$44$44$44$44$44$44$44$44$44$44$44$4�54$44$44$44$44$44$444$44$44$44$44$44$44U4`4j44U4`4j4�54�5�5�5w\	'**569��9��i+v�	�	!�	)�	1�	9�	A�	I�	Q�	Y�	a�	�i�	q�	y�	I��	P��	���7U��	]�&8b)/8t)88z��	��j�	\8���	���8���	���8�����8��V��9��B9��L9��\9��V��y9�9]��9��9��`+�$�9���9���9��9���9���9]�:��:�:��:��	�;:])P:�1�	p	h:)t:�9�	���:��:��	�	�	�A�	�I�	$Q&8,��:`��	]�	��;��I�;`*;��F;�o;D�;JY�;PY�;YY�;_,�	�q�;l�"<zA8<��?<���	���	���<��	���<���<��%=�q�9�q/=JaC=��R=l�\=l��	���	�4�	���=���=���=���=��=���=��	���	���	q6>
�^>�p�p	�	���	!`
��>��>"!�	���	(��>b�	!�	��?/���a3?6aC?<L?<X?�)�	�1r?G��?]��?MAL9Sa�'Ba�?p	9���?\I�?aY�	�1�	�1�?Ga@fi<@la_@r�i@���@`��@`1�@�Q�@���@�Q�@�i�@���@�<�	�QA��A�D�	�iYA�L+�T�9�D�9�!�A���	���A�;:]��A���A�	�Ap�B�\�9��MB�D+	d�9	l�,	lxB�d�9�t�	���B8	|+���9���Bt�9�t�BP	�L9�	��l��B�	|�9���B�	� C�	��9��]C�	�mC��sC���C�	�C�	��C��C�	��C��+�	��9�%D�	)ID
)�`!M
 
)�]��	���9���;`��DK
��	��EY
�+o
��9��L9�
yE�
a�	��E]��9���9���	��1E�
�6E�
�>EliGE�\E�sE��E�
��	���E�
<�E�<�E���E�
��	���E�
�F�
�F�
�*F�
��	��JF�
�bF�
��F��FPi�F��	�y�Fy�F%��	���E+��E2��F���F8�GpA�	��0G�aVGH��9���	W��9���G���G^��G`��G]�HdA8<j�)Ho�QHu��	���9��	�;:]!�H�y+v��9`�H�	�	�A+�:���H�H]��	���	���	�\I�)�9�axI�a�Ia�I�a�I�i�9]��I��?<���Ia�	q3J>J�KJ��[J�jJ��J���J���J���J.�[J��J.��J.�K.�K.�	�;K.�NK.�iK.��K.1�KG��K�a�KBa�K�a�KIa�KPaLVa'L[iV�a6LP�DLP��*v�L9�	aoL�a�*a�L���L����A�L���`��L�I�L���L]��L���L�Q+�:���L���L��M��8M���9���	��IM�QM�YkM�YL9��L9\I�M�i�MV��M���M
y1E
��M
i�M���	�N.
I�M�N�� N��.N��AN��RN��:H
�zNO
��NU
��N���N���N\
��Nc
�Oi
�)O��[Ou
�L9�	�+��9��mO�
�O�
[O�
�9�	�O�P�
)P`�0G��,P�
��Bj��G�Y�	1@�
9�M�90G�1�I�9�P�
A�9�
9�G�I�P�
AL9�
1�P��EK
a�P�
��`9g��P�	9W��P�
Q+��9�+��9�aQ��/Q��B?�HQl�_Q�eQp��9��L9OY�	���Qb��Q"�V�V���Q��Km��Q�a�Qt�R{��	�I�9�I�`�+R�q�	�y�	�y�R���R�q�R��S]��	��3S��LS��\S���	��kS�B���A�q�S�$L9�	��S��S]$�9�a�Sa�Sa�*y?T�)oT���	���T�a�9��T���	���	��T��	���T��T���T���TI�H��S]aU#1\UG��	4�mU?��UE��UN��UZa�>�U^I+d��Ln�?<v��U<�V<�'V<�DV|�gV|��V�I�V�		�V�I�M���	���VB��VB��VB�W��%W�Q�'3	�W�Q�	�)	�W���	�1	�`aX�aHX�,V�A	�9�anX�<��Q	�X�Q	�XQM�4�	�4+$��	���X]��:`��	�D�	���X?�	YK�YL>EZ�UYd�bY��gY��	�Y��	�Y��	�Yu��Y��	Z��ZPT�	�T�9��	RZ���	��ZZ��mZ��zZ���Z���Z���Z��+�a�Z��E�a�Z�a�Z�I�U�a[a-[�`D[�		�	P		R[�	u[�	�	$�	�[9�1I�?7a�[��kSa�Sa�[a�	wan(Ba�Ha�[a�[��9��\�a\�4\P	��:`	;\��I\`1	���:�\�	�t�\�q�	��	�\��	]��	�3B�	K]��	]]�p]`�]��	�]P�	�]�	�]�	�]��	^P�	^P�	9^�	L^�y�	�>Yn�������������q�����.�a��t�x�|�������.s�.��.�.k�.+(.�.�.;^.[�.3(.#�.C^.K�.S��������� ��@��A��`��a���������������������������� ��`���s�������C��c�����@
s��
���
���s��
���� ��@���s��s� ��@��`���������s�a��s��s�s�`�����@��`���s�s� s��s��s��s�@s�`������ s�@!s�"s�`"s��#s��#��$�� $��@$���$���$���$��%��A&��a&���&���&���&s�'s�@'��`'���'���'���'���'��a)���)���)��*s��+s��,s��-s�@/s��/s� 0��@0��`1s�2�� 2��!5��a5��o���9?�BX|�V	�	
/
�
>��!4=Pbm�����#
4
<
@
q
�
�
�
�
�
(DU��������.U�������j�������+>Ph���	
%&!*#5&7'q
%�
%�
)�
)�
.�
.�
3�
8�d�%M
�S
��%�%�%+>�U�ZI�[
��%�	�Z��M
�i�m�qZ{$Z{$Z=(IJ(I�(I�(I�+Z�+Z�+���39			



'(.87:9JKLMNOf!o#p#q%r%�'�'�)�)�+�-�/�/�1�1�3�3�5�5�7�7�9�9�;�=? ?"A!A&C%C'E(E:G;G<I=I?K>K�M�M�O�O'Z'\*�66���d������	"	1	>	G	�	�	%
P
e
{
�
N{���|�~
�
 ��.6R���
�

=

:

�

�

�

Z��,

G<'

2C�M

JR

�R��X

�\

�\_^P�y^X��^x��^-,.,/,:;<7��
�
�
��<Module>PivotGridDemo.dllDataSourceDialogPivotGridDemo.PivotGridPivotGridDemoModuleInternetConnectionControlProgressBarContainerPivotGridCheckAllDemosFixturePivotGridDemo.TestsFieldAreaHelperCellTemplatesRoundConverterChartGeneralOptionsChartFactorySeriesTypeDescriptorConditionalSortBySummaryContextMenuFieldSummaryItemCustomAppearanceCellModeCustomerReportsCustomGroupIntervalCustomLayoutPivotImageExtensionDashboardSimpleGaugeControlFieldsCustomizationFieldListVisibleToCommandTextConverterFilterPopupGroupIntervalGroupsMultipleTotalsOLAPBrowserOLAPKPIOrderReportsPrefilterPrintOptionsMoonPhasePrintTemplatesCellTemplateSelectorFieldValueTemplateSelectorMoonPhaseImageConverterProductReportsRIAServicesPivotRiaConfigurationRiaServicesBindingHelperSerializationLayoutSampleBaseResourceLayoutSampleMemoryStreamLayoutSampleSingleTotalSortBySummarySummaryDisplayModeTopValuesTotalsLocationUnboundExpressionsFieldValueItemToBooleanConverterNamesControllerAppPivotGridDemoStartupSystem.WindowsSystem.Windows.ControlsControlDevExpress.Xpf.DemoBase.v13.1DevExpress.Xpf.DemoBaseDemoModuleUserControlDevExpress.Xpf.DemoBase.DemoTestingCheckAllDemosFixtureDependencyObjectSystem.Windows.MarkupMarkupExtensionSystem.Windows.DataIValueConvertermscorlibSystemObjectEnumDevExpress.Xpf.Core.v13.1DataTemplateSelectorSystem.Collections.GenericIEnumerable`1DevExpress.Xpf.PivotGrid.v13.1DevExpress.Xpf.PivotGridPivotGridFieldSystem.CollectionsIEnumerableApplicationDemoStartupConnectionStringNameCatalogsComboNameCubesComboNameUserNamePasswordNameConnectButtonNameDependencyPropertyIsCatalogsRetrivingPropertyIsCubesRetrivingPropertyDevExpress.PivotGrid.v13.1.CoreDevExpress.XtraPivotGridXmlaMetaGettermetaGetter.cctorget_IsCatalogsRetrivingset_IsCatalogsRetrivingget_IsCubesRetrivingset_IsCubesRetrivingDevExpress.Xpf.EditorsComboBoxEditget_CatalogsComboset_CatalogsComboget_CubesComboset_CubesComboTextEditget_ConnectionStringset_ConnectionStringget_Userset_UserPasswordBoxEditget_Passwordset_PasswordButtonget_ConnectButtonset_ConnectButtonOnApplyTemplateRoutedEventArgsConnectEditValueChangedEventArgsOnCatalogsComboEditValueChangedCatalogOrCubeEmptyIsCatalogEmptyClearComboAsyncOperationResultInitComboBoxOnCatalogsRetrievedOnCubesRetrievedGetConnectionStringGetUserNameGetConnectionStringCoreShowMessageApplyPlatformTemplateRetriveCatalogsAndCubesRetriveCubes.ctor<CatalogsCombo>k__BackingField<CubesCombo>k__BackingField<ConnectionString>k__BackingField<User>k__BackingField<Password>k__BackingField<ConnectButton>k__BackingFieldIsCatalogsRetrivingIsCubesRetrivingCatalogsComboCubesComboConnectionStringUserPasswordConnectButtonWeakReferencePivotPivotGridControlPropertyDevExpress.Xpf.Core.WPFCompatibilitySLDependencyPropertyChangedEventArgsOnPivotGridControlChangedDependencyPropertyChangedEventArgsRaiseIsPopupContentInvisibleChangedPivotGridControlget_PivotGridControlset_PivotGridControlEnsurePivotFrameworkElementIsPivotOnLoadedGetModuleDataContextget_NeedChangeEditorsThemeCanLeaveClearShowPrintPreviewShowPrintPreviewCoreNeedChangeEditorsTheme_contentLoadedInitializeComponentget_Valueset_ValueValuePropertyget_Maximumset_MaximumMaximumPropertyOnProgressBarPropertyChangedProgressBarprogressBarUpdateProgressBarValueMaximumTypeCanRunModuleFixAreasPropertyGetFixAreasSetFixAreasOnFixAreasPropertyChangedPivotFieldAreaChangingEventArgsOnPivotFieldAreaChangingIsCellTemplateVisiblePropertyIsCellValueVisiblePropertyIsCellShareVisiblePropertyOnCellTemplateVisiblePropertyChangedget_IsCellTemplateVisibleset_IsCellTemplateVisibleget_IsCellValueVisibleset_IsCellValueVisibleget_IsCellShareVisibleset_IsCellShareVisibleOnCellTemplateVisibleChangedTemplatesList_SelectionChangedListBoxEdittemplatesListpivotGridfieldCategoryfieldProductfieldSalesfieldYearIsCellTemplateVisibleIsCellValueVisibleIsCellShareVisibleSystem.GlobalizationCultureInfoConvertConvertBackIServiceProviderProvideValueProductFilterValuesPivotGridDemoModule_LoadedSetFilterSetSelectioncbChartType_SelectedIndexChangedceShowPointsLabels_CheckedoncrChartDataVerticalSelectedIndexChangedchartControl_BoundDataChangedConfigurePieDevExpress.Xpf.Charts.v13.1DevExpress.Xpf.ChartsPieSeriesGetPointsCountCheckWarningVisivilityIsProvideEmptyCellsPivotCustomChartDataSourceDataEventArgspivotGrid_CustomChartDataSourceDatacbChartTypeCheckEditceShowPointsLabelscrChartDataVerticalceChartSelectionOnlyceChartShowColumnGrandTotalsceChartShowRowGrandTotalsSpinEditUpdateDelayGridwarningChartDevExpress.Xpf.LayoutControl.v13.1DevExpress.Xpf.LayoutControlLayoutControlmainLayoutfieldProductNamefieldExtendedPricefieldOrderMonthfieldOrderYearChartControlchartControlXYDiagram2DTypeSimpleDiagram2DTypeDefaultSeriesTypeDictionary`2seriesTypesget_SeriesTypesCreateSeriesTypesComboBoxEditItemCompareComboItemsByStringContentDiagramNullable`1GenerateDiagramXYDiagram2DPrepareXYDiagram2DSeriesCreateSeriesInstanceCreateDiagramBySeriesTypeSeriesTypesget_DiagramTypeset_DiagramTypeget_DisplayTextset_DisplayText<DiagramType>k__BackingField<DisplayText>k__BackingFieldDiagramTypeDisplayTextpivotGrid_LoadedfieldMonthfieldSalesPersonfieldQuantityfieldDiscountPivotCustomSummaryEventArgsOnPivotGridCustomSummaryPopupMenuShowingEventArgsOnPivotGridShowMenuSetFieldSummaryTypeFieldSummaryTypeGetFormatCanSetFieldSummaryTypeDevExpress.Xpf.BarsBarManagerbarManagerBarCheckItemShowColumnGrandTotalHeaderShowColumnGrandTotalsShowColumnTotalsShowRowGrandTotalHeaderShowRowGrandTotalsShowRowTotalsShowGrandTotalsForSingleValuesShowTotalsForSingleValuesfieldUnitPriceBarItemLinkSeparatorSeparator1Separator2Separator3Separator4get_Fieldset_Fieldget_Typeset_Type<Field>k__BackingField<Type>k__BackingFieldFieldget_AllowSwitchingThemeOnModuleLoadedOnFocusedCellChangedPivotCustomCellAppearanceEventArgsOnCustomCellAppearancePivotCustomValueAppearanceEventArgsOnCustomValueAppearanceSystem.Windows.MediaBrushGetActualCellForegroundBrushGetActualCellBackgroundBrushfieldOrderQuarterfieldCategoryNamefieldCountryfieldOrderIDfieldOrderAmountAllowSwitchingThemevalue__NoneTolalSelectedTotalSelectedallStringListBoxEdit_SelectionChangedcbeYear_SelectedIndexChangedcbeQuarter_SelectedIndexChangedSetTopCustomersSetTopProductsSetYearFilterResetValuesUpdateYearFilterUpdateQuarterFilterreportsListDevExpress.Xpf.CoreGroupFramegbxFilteringcbeYearcbeQuarterfieldQuarterfieldCompanyNamefieldProductAmountselectedDemoget_SelectedDemocbGroup_SelectedIndexChangedPivotCustomGroupIntervalEventArgspivotGrid_CustomGroupIntervalcbGrouppivotGridField1pivotGridField2pivotGridField3pivotGridField4pivotGridField5SelectedDemolayoutItemsSystem.Windows.Media.ImagingBitmapImageimagesLoadImageGetImageget_ImageNameset_ImageName<ImageName>k__BackingFieldImageNameget_SalesTargetset_SalesTargetpivotGrid_GridLayoutUpdateKPIsGetAverageTransactionGetSalesToLastYearGetSalesTargetGetSalesToTargetFieldAreaResetFieldResetdashboardListavgTransGaugesalesToLastYearGaugeTextBlocksalesToLastYearNAsalesToTargetGauge<SalesTarget>k__BackingFieldSalesTargetMinPropertyMaxPropertyValueStringFormatPropertyUpdateDisplayTextContentControltextControlget_Minset_Minget_Maxset_Maxget_ValueStringFormatset_ValueStringFormatMinMaxValueStringFormatShowHideFieldList_ClickcustomizationStyle_SelectedIndexChangedOnAllowCustomizationFormChangedOnCustomizationLayoutsEditValueChangedDevExpress.Xpf.Editors.WPFCompatibilitySLSelectionChangedEventArgsOnCustomizationLayoutsPopupContentSelectionChangedDevExpress.Xpf.Editors.PopupsPopupListBoxGetListBoxIsListBoxOnCurrentLayoutEditValueChangedEnsureCurrentLayoutItemsFieldListAllowedLayoutsFieldListLayoutToFieldListAllowedLayoutsVisualStateGroupShowLayoutListGroupVisualStateShowAdvancedOptionsHideAdvancedOptionscustomizationStyleShowHideFieldListadvancedOptionscurrentLayoutcustomizationLayoutsfieldOrderDayfieldOrderDayOfWeekfieldOrderDayOfYearfieldFirstNamefieldLastNameOnPivotGridLoadedSetGroupFilterPivotGridGroupPivotGridGroup1PivotGridGroup2InitComboBoxesPivotFieldDisplayTextEventArgspivotGrid_FieldValueDisplayTextcbGroupInterval_SelectedIndexChangedcbGroupIntervalceProductIntervalfieldProductAlphabeticalfieldOrderDateisExpandedUpdateGroupsExpandedCollapse_ClickExpand_ClickButtonCollapseButtonExpandPivotGridGroup3YearFieldNameCategoryFieldNameTotalCostFieldNameFreightFieldNameQuantityOrderFieldNameDefaultFieldWidthlastSplitterYDataSourceDialohHeightget_SampleConnectionStringPivotConnectionStringIsSampleCubeSizeChangedEventArgsOnPivotGridSizeChangedInitPivotLayoutSampleOlapDBInitPivotGriddialogOnShowConnectionClickDialogClosedPivotCellEventArgspivotGrid_CellDoubleClickPivotDrillDownDataSourceShowDrillDownShowMessageBoxgrid_ColumnsPopulatedGetHeaderTextPivotOlapExceptionEventArgsOnPivotGridOlapExceptionShowOLAPErrorMessageEventArgsOnTimerTickShowErrorMessageGroupShowErrorMessageHideErrorMessageBordererrorBordererrorTextshowConnectionButtonPivotExcelFieldListControlfieldListSampleConnectionStringcbStatusGraphics_SelectedIndexChangedcbTrendGraphics_SelectedIndexChangedcbStatusGraphicscbTrendGraphicsfieldFiscalYearfieldFiscalSemesterfieldFiscalQuarterfieldInternetRevenuefieldGoalfieldStatusfieldTrendorderIDFilter_SelectedIndexChangedgroupOptionsorderIDFilterfieldOrderdeFromTo_EditValueChangedApplyPrefilterDateTimeGetCriteriaDateEditdeFromDatedeToDateButton_ClickNewMoonWaxingCrescentMoonFirstQuarterMoonWaxingGibbousMoonFullMoonWaningGibbousMoonLastQuarterMoonWaningCrescentMoonDataTemplatedefaultCellTemplatedefaultValueTemplatedefaultHeaderTemplatedefaultCellTemplateSelectordefaultValueTemplateSelectorSaveDefaultTemplatesGetFracPartMoonPhaseFromIntCalculateMoonPhaseResetItemstemplatesList_SelectedIndexChangedfieldMoonPhaseSelectTemplateget_CellTemplateset_CellTemplateget_CellTotalTemplateset_CellTotalTemplate<CellTemplate>k__BackingField<CellTotalTemplate>k__BackingFieldCellTemplateCellTotalTemplateget_ValueTemplateset_ValueTemplateget_ValueTotalTemplateset_ValueTotalTemplate<ValueTemplate>k__BackingField<ValueTotalTemplate>k__BackingFieldValueTemplateValueTotalTemplateExceptionRoutedEventArgsimage_ImageFailedSystem.Windows.Data.IValueConverter.ConvertSystem.Windows.Data.IValueConverter.ConvertBackReportsList_SelectionChangedcbxShowCategories_CheckedComboBoxEdit_SelectedIndexChangedpivotGrid_CellDblClickgbxOptionsshowDrillDowncbxShowCategoriesspGroupingLayouttbGroupingLayoutcbeGroupingLayoutfieldAverageSalefieldMinimumSalelistBoxEditget_Captionset_Captionget_DomainDataSourceQueryNameset_DomainDataSourceQueryNameList`1get_Fieldsset_FieldsToStringIEnumerator`1GetEnumeratorIEnumeratorSystem.Collections.IEnumerable.GetEnumerator<Caption>k__BackingField<DomainDataSourceQueryName>k__BackingField<Fields>k__BackingFieldCaptionDomainDataSourceQueryNameFieldsRiaConfigurationPropertyGetRiaConfigurationSetRiaConfigurationDevExpress.Xpf.DemoBase.Web.ServicesNWindDomainContextDomainContextCurrentPivotGridSystem.Windows.Controls.DomainServicesDomainDataSourceCurrentDataSourceOnRiaConfigurationPropertyChangedLoadedDataEventArgsdds_LoadedDataSystem.IOMemoryStreamcurrentLayoutStreamLoadSampleButton_ClickSaveLayoutButton_ClickRestoreLayoutButton_ClickSaveLayoutStreamRestoreLayoutrestoreLayoutButtonlayoutSamplesComboBoxdescriptionGetStreamresourcePathstreamcbField_SelectedIndexChangedcbSummaryType_SelectedIndexChangedcbFieldcbSummaryTypeceShowColumnGrandTotalHeaderceShowColumnGrandTotalsceShowColumnTotalsceShowRowGrandTotalHeaderceShowRowGrandTotalsceShowRowTotalsceShowGrandTotalsForSingleValuesceShowTotalsForSingleValuescheckAllowCrossGroupVariation_CheckedcheckAllowCrossGroupVariation_UncheckedcheckHideEmptyVariationItems_CheckedcheckHideEmptyVariationItems_UncheckedcbSummaryDisplayType_SelectedIndexChangedOnCustomAppearanceFieldSummaryDisplayTypeFieldVariationCaptioncheckAllowCrossGroupVariationcheckHideEmptyVariationItemscbSummaryDisplayTypefieldDatefieldQuantity1checkTopValueShowOthers_CheckedcheckTopValueShowOthers_UncheckedseTopValuesCount_EditValueChangedSetFieldTopHideRowAreaFieldsseTopValuesCountcheckTopValueShowOtherscbColumnTotalsLocationcbRowTotalsLocationget_NamesControllerset_NamesControllerCreateNamesControllerGetNewInvisibleBonusFieldbeExpression_ClickbtnAddField_ClickEditValueChangingEventArgsteBonusName_EditValueChangingPivotFieldEventArgspivotGrid_FieldUnboundExpressionChangedItemClickEventArgsremoveBonus_ItemClickcbSalesPersonteBonusNamebtnAddFieldButtonEditbeExpressionfieldOrderCountfieldNewYearBonusfieldOrderCountBonusBarButtonItemremoveBonus<NamesController>k__BackingFieldDefaultNameget_AvailableNamesset_AvailableNamesGetNextDefaultNameRegisterAvailableNameUnRegisterAvailableName<AvailableNames>k__BackingFieldAvailableNamesInitDemoGetDebugGetFixtureTypeForXBAPOrSLTestingCreateApplicationSetCultureInfovaluesendereeditresultmessagedelementpivotmoduleTypetargetTypeparametercultureserviceProviderseriesfirstsecondcomboBoxdiagramFilterseriesTypeshowPointsLabelsdiagramitemfieldSummaryTypefieldactualModeimageNameareaareaIndexincludeCurrentlayoutconnectionStringclosedrillDownDataSourcedrilldownColumnNamesender1e1dateisGreaterphaseyearmonthdaycontainerdisplayTypedefaultNamenameappSystem.Runtime.VersioningTargetFrameworkAttributeSystem.ReflectionAssemblyTitleAttributeAssemblyDescriptionAttributeAssemblyProductAttributeAssemblyTrademarkAttributeAssemblyConfigurationAttributeAssemblyCompanyAttributeAssemblyCopyrightAttributeAssemblyCultureAttributeProductIDAttributeSystem.Runtime.InteropServicesComVisibleAttributeAssemblyVersionAttributeAssemblyFileVersionAttributeSystem.DiagnosticsDebuggableAttributeDebuggingModesSystem.Runtime.CompilerServicesCompilationRelaxationsAttributeRuntimeCompatibilityAttributeRuntimeTypeHandleGetTypeFromHandleBooleanPropertyMetadataRegisterGetValueSetValueCompilerGeneratedAttributeGetTemplateChildEditValueChangedEventHandlerBaseEditadd_EditValueChangedRoutedEventHandlerSystem.Windows.Controls.PrimitivesButtonBaseadd_Clickget_ConnectedTextEditBaseLookUpEditBaseget_SelectedIndexListItemCollectionget_Itemsget_ItemStringIsNullOrEmptyCollectionBaseEmptyset_EditValueExceptionget_Exceptionget_MessageIList`1get_CurrentAddMoveNextIDisposableDisposeget_Countset_SelectedItemConcatget_TextIsNullOrWhiteSpaceDXDialogDialogButtonsset_ContentDXWindowset_IsSizableThicknessset_PaddingShowDialogAsyncCompletedHandlerGetCatalogsAsyncGetCubesAsyncSLPropertyChangedCallbackSLPropertyMetadataDependencyPropertyManagerget_NewValue<.ctor>b__0add_Loadedget_Targetget_IsPopupContentInvisibleset_IsFieldListVisibleDemoModuleControlget_DemoModuleControlUIElementget_ContentFindDemoContentset_DemoContentget_DemoContentPredicate`1DevExpress.Xpf.Core.NativeLayoutHelperFindElementFieldRowTotalsLocationget_RowTotalsLocationEqualsBestFitDevExpress.Xpf.Printing.v13.1DevExpress.Xpf.PrintingDocumentPreviewPrintableControlLinkIPrintableControlLinkBaseset_ExportServiceUriLinkPreviewModelget_LinkCreateDocumentDocumentPreviewBaseIDocumentPreviewModelset_Modelget_RootVisualSizeget_RenderSizeget_Widthget_HeightFloatingContainerParametersset_DialogButtonsset_AllowSizingset_CloseOnEscapeset_TitleDialogClosedDelegateset_ClosedDelegateFloatingContainerShowDialogContentDebuggerNonUserCodeAttributeUriUriKindLoadComponentDefaultStyleKeyExtensionsSetDefaultStyleKeyDoubleRangeBasePropertyChangedCallbackMemberInfoget_Nameop_InequalityRegisterAttachedArgumentNullExceptionPivotFieldAreaChangingEventHandleradd_FieldAreaChangingFieldUnboundColumnTypeget_UnboundTypeget_Areaget_NewAreaset_AllowNWindDataIListget_ProductReportsset_DataSourceResourceDictionaryget_Resourcesset_WidthFindNameToInt32Int32NotImplementedExceptionget_SalesPersonFieldFilterValuesget_FilterValuesPivotGridFieldFilterValuesset_ValuesIncludedFieldFilterTypeSetValuesSetSelectionByFieldValuesget_SelectedItemget_Tagget_IsCheckedset_Diagramset_ChartProvideEmptyCellsget_Diagramget_SeriesTemplateset_LabelsVisibilityset_CrosshairEnabledset_ChartProvideDataByColumnsSimpleDiagram2DSeriesCollectionget_SeriesDependencyObjectCollection`1TitleCollectionget_TitlesTitleget_DisplayNameTitleBaseDockset_DockHorizontalAlignmentset_HorizontalAlignmentset_FontSizeVerticalAlignmentset_VerticalAlignmentChartDependencyObjectCollection`1set_ShowInLegendEnumeratorKeyValuePair`2get_KeySeriesPointCollectionget_PointsSeriesPointget_ArgumentContainsIsNaNDevExpress.XtraPivotGrid.SelectionIMultipleSelectionget_MultiSelectionReadOnlyCellsget_SelectedCellsDevExpress.Data.v13.1System.DrawingPointget_FocusedCellget_Xget_YPivotCellBaseEventArgsGetCellInfoFieldValueTypeget_ColumnValueTypeget_ChartProvideColumnGrandTotalsget_RowValueTypeget_ChartProvideRowGrandTotalsUIElementExtensionsSetVisiblePivotChartItemDataMemberget_ItemDataMemberDBNullAreaFullStackedSeries2DAreaSeries2DAreaStackedSeries2DBarFullStackedSeries2DBarStackedSeries2DLineSeries2DPointSeries2DPieSeries2DCompareToKeyCollectionget_KeysArrayIndexOfset_TagComparison`1SortToArrayAddRangeset_SeriesDataMemberset_ArgumentDataMemberset_ValueDataMemberSeriesLabelget_Labelset_LabelGetValueOrDefaultget_HasValuePointOptionsget_LegendPointOptionsset_LegendPointOptionsPointViewset_PointViewset_PointOptionsget_PointOptionsNumericOptionsset_ValueNumericOptionsget_ValueNumericOptionsNumericFormatset_Formatset_Precisionset_SeriesTemplateAxisX2Dset_AxisXget_AxisXAxisLabelAxisBaseset_StaggeredActivatorCreateInstanceISupportTransparencyset_TransparencyBeginUpdateSortByConditionCollectionget_SortByConditionsSystem.Collections.ObjectModelCollection`1SortByConditionEndUpdateDevExpress.Data.PivotGridPivotSummaryValueget_SummaryValueget_Summaryset_CustomValuePivotGridMenuTypeget_MenuTypeGetFieldInfoBarManagerActionCollectionget_CustomizationsIBarManagerControllerActionBarSubItemBarItemDevExpress.Data.MaskEnumHelperGetValuesBarItemLinkCollectionget_ItemLinksset_Nameset_CommandParameterAction`1Func`2DevExpress.Xpf.Core.CommandsDelegateCommand`1System.Windows.InputICommandset_CommandBarItemLinkBaseset_SummaryTypeset_CellFormatget_SummaryTypeset_FilterTypeadd_FocusedCellChangedSLRoutedEventBrushChangedEventPivotBrushChangedEventArgsPivotBrushTypeSLControlSLRoutedEventArgsRaiseEventget_RowIndexget_ColumnIndexset_Backgroundset_ForegroundPivotFieldValueEventArgsget_MaxIndexget_MinIndexget_IsColumnget_ValueSelectedBackgroundget_CellForegroundget_CellSelectedForegroundget_CellTotalForegroundget_CellTotalSelectedForegroundget_CellBackgroundget_CellSelectedBackgroundget_CellTotalBackgroundget_CellTotalSelectedBackgroundget_CustomerReportsEndUpdateAsyncset_Areaset_SortByFieldFieldSortOrderset_SortOrderset_TopValueCountGetUniqueValuesVisibilityset_Visibilityset_AreaIndexset_SelectedIndexPivotGridFieldCollectionset_VisibleFieldGroupIntervalset_GroupIntervalCollapseAllReferenceEqualsget_CharsToCharset_GroupValueget_Yearget_MonthFormatAssemblyget_AssemblyImageHelperCreateImageFromEmbeddedResourceTryGetValueMathCeilingCreateDrillDownDataSourceget_RowCountPivotDrillDownDataRowToDoubleget_ValuesIncludedSystem.CoreSystem.LinqEnumerableCountGetFieldCountByAreaGetCellValueget_IsEmptyArgumentExceptionPowExpandAllExpandAllRowsCollapseAllColumnsExpandAllColumnsCollapseAllRowsDefaultFieldListFactoryget_InstanceIColumnChooserFactoryset_FieldListFactoryShowFieldListget_IsFieldListVisibleFieldListStyleset_FieldListStyleget_FieldListStyleVisualStateManagerGoToStateget_AllowCustomizationFormObservableCollection`1get_SelectedItemsset_FieldListAllowedLayoutsDevExpress.Xpf.Editors.HelpersPopupBaseEditHelperPopupBaseEditGetOkButtonListBoxICollectionset_IsEnabledEditorPopupBaseGetPopupPopupBaseget_PopupContentget_FieldListLayoutGroupFilterValuesPivotGroupFilterValuesPivotGroupFilterValuesCollectionget_ValuesPivotGroupFilterValueget_ChildValuesset_IsCheckedget_GroupIntervalget_ValueTypeReplacePivotGridGroupCollectionget_Groupsset_ExpandedInFieldsGroupget_OlapConnectionStringget_FieldListSplitterYRoundset_FieldListSplitterY<InitPivotGrid>b__0RetrieveFieldsAsyncop_Equalityset_OlapConnectionStringget_IsAsyncInProgressResourceHelperFindResourceStyleset_Style<pivotGrid_CellDoubleClick>b__1CreateDrillDownDataSourceAsyncDevExpress.Xpf.Grid.v13.1DevExpress.Xpf.GridGridControlTableViewset_AllowPerPixelScrollingGridViewBaseset_ShowGroupPanelDevExpress.Xpf.Grid.v13.1.CoreDataViewBaseset_ViewDataControlBaseset_ItemsSourceSLRoutedEventHandleradd_AutoGeneratedColumnsPopulateColumnsset_ShowBorderset_TextGridColumnCollectionget_ColumnsGridColumnColumnBaseget_FieldNameBaseColumnset_Headerget_ExpressionFieldNameget_OlapDrillDownColumnName<>c__DisplayClass5<>4__this<OnPivotGridOlapException>b__4set_HandledSystem.Windows.ThreadingDispatcherget_DispatcherActionDispatcherOperationBeginInvokeget_InnerExceptionDispatcherTimerTimeSpanset_IntervalEventHandleradd_TickStartStopremove_TickPivotKpiGraphicset_KpiGraphic<>c__DisplayClass1<OnPivotGridOlapException>b__0get_OrderReportsget_DateTimeDevExpress.Data.FilteringCriteriaOperatorParseset_PrefilterCriteriaget_Ticksget_InvariantCultureIFormatProviderget_PrintFieldCellTemplateget_PrintFieldValueTemplateget_PrintFieldHeaderTemplateget_PrintFieldCellTemplateSelectorget_PrintFieldValueTemplateSelectorget_DayDecimalToDecimalTruncateset_PrintFieldCellTemplateset_PrintFieldValueTemplateset_PrintFieldHeaderTemplateset_PrintFieldCellTemplateSelectorset_PrintFieldValueTemplateSelectorDevExpress.Xpf.PivotGrid.PrintingPrintCellsAreaItemDevExpress.Xpf.PivotGrid.InternalCellsAreaItemget_IsTotalAppearancePrintFieldValueItemFieldValueItemScrollableAreaItemBaseFieldTotalsVisibilityset_TotalsVisibilityPivotGridCustomTotalCollectionget_CustomTotalsPivotGridCustomTotalSetAreaPositionThemeManagerget_ApplicationThemeNameSetThemeNameset_DataContextEventHandler`1add_LoadedDataSystem.ServiceModel.DomainServices.Clientset_DomainContextset_QueryNamePivotChildCollection`1DomainDataSourceViewget_DataViewLoadget_HasErrorEnvironmentget_NewLineSystem.ComponentModelAsyncCompletedEventArgsget_ErrorMessageBoxMessageBoxResultMessageBoxButtonShowMarkErrorAsHandledget_ColumnCountBestFitColumnDevExpress.Xpf.DemoBase.HelpersDemoHelperGetPathSaveLayoutToStreamset_PositionRestoreLayoutFromStreamGetExecutingAssemblyGetManifestResourceStreamset_AllowCrossGroupVariationget_Visibleget_SortByFieldset_HideEmptyVariationItemsset_SummaryDisplayTypeget_SummaryDisplayTypeget_DataFieldop_GreaterThanOrEqualColorsColorget_BlueSolidColorBrushget_Redset_TopValueShowOthersFieldColumnTotalsLocationget_UnboundFieldNameset_UnboundTypeset_UnboundExpressionShowUnboundExpressionEditorget_UnboundExpressionRemoveget_IsEnabledget_DataContext<UnRegisterAvailableName>b__0availableNameRemoveAllDevExpress.DemoData.v13.1.CoreDevExpress.DemoData.HelpersStartupBaseRunDevExpress.DemoData.v13.1DevExpress.DemoDataAssemblyMarkerLoaderset_DemoDataAssemblySystem.ThreadingThreadget_CurrentThreadget_CurrentCultureCloneNumberFormatInfoget_NumberFormatset_CurrencyDecimalDigitsset_CurrencyDecimalSeparatorset_CurrencyGroupSeparatorset_CurrencyGroupSizesset_CurrencyNegativePatternset_CurrencyPositivePatternset_CurrencySymbolset_CurrentCulturePivotGridDemo.g.resourcesPivotGridDemo.Data.EmbeddedData.txtPivotGridDemo.Data.LayoutSamples.BriefView.xmlPivotGridDemo.Data.LayoutSamples.FullView.xml'IsCatalogsRetriving!IsCubesRetrivingCatalogsComboCubesCombo!ConnectionStringUserComboPasswordComboConnectInvalid cube.#;Initial Catalog=;Cube Name=User Id=;Password=Data Source=)PivotGrid Demo Error!PivotGridControl)../ExportService.svcPrint Preview��/PivotGridDemo;component/Controls/ControlStyles/InternetConnectionControl.SL.xaml!PART_ProgressBarValueMaximumAsyncModeOLAPBrowserRIAServicesOLAPKPIFixAreaselement+IsCellTemplateVisible%IsCellValueVisible%IsCellShareVisibleCellTemplatem/PivotGridDemo;component/Modules/CellTemplates.SL.xamltemplatesListpivotGridfieldCategoryfieldProductfieldSalesfieldYear	ChaiChocoladey/PivotGridDemo;component/Modules/ChartGeneralOptions.SL.xamlcbChartType%ceShowPointsLabels'crChartDataVertical)ceChartSelectionOnly9ceChartShowColumnGrandTotals3ceChartShowRowGrandTotalsUpdateDelaywarningChartmainLayout!fieldProductName%fieldExtendedPricefieldOrderMonthfieldOrderYearchartControlChangFilo MixGeitostIkuraKonbuMaxilakuPavlovaSpegesild	TofuTourti�re7Area Full-Stacked Series 2DArea Series 2D-Area Stacked Series 2D5Bar Full-Stacked Series 2D+Bar Stacked Series 2DLine Series 2DPoint Series 2DPie Series 2D
SeriesArguments
Values��/PivotGridDemo;component/Modules/ConditionalSortBySummary.SL.xamlfieldMonth!fieldSalesPersonfieldQuantityfieldDiscountSummary Type	itemcpi/PivotGridDemo;component/Modules/ContextMenu.SL.xamlbarManager5ShowColumnGrandTotalHeader+ShowColumnGrandTotals!ShowColumnTotals/ShowRowGrandTotalHeader%ShowRowGrandTotalsShowRowTotals=ShowGrandTotalsForSingleValues3ShowTotalsForSingleValuesfieldUnitPriceSeparator1Separator2Separator3Separator4Grains/CerealsMeat/PoultryProduceRobert KingSteven BuchananCellModes/PivotGridDemo;component/Modules/CustomAppearance.SL.xaml#fieldOrderQuarter#fieldCategoryNamefieldCountryfieldOrderID!fieldOrderAmount(All)q/PivotGridDemo;component/Modules/CustomerReports.SL.xamlreportsListgbxFilteringcbeYearcbeQuarterfieldQuarter!fieldCompanyName%fieldProductAmountEGroup Products by First Characters?Group Sales by Year and QuarterProduct Group	YearYear - QuarterShipped DateA-EF-ST-Z - y/PivotGridDemo;component/Modules/CustomGroupInterval.SL.xamlcbGrouppivotGridField1pivotGridField2pivotGridField3pivotGridField4pivotGridField5k/PivotGridDemo;component/Modules/CustomLayout.SL.xamllayoutItemsODevExpress.Xpf.PivotGrid.Images.{0}.pngProductSales?!fieldYear.FilterValues.IsEmptyno salesBeveragesCondimentse/PivotGridDemo;component/Modules/Dashboard.SL.xamldashboardListavgTransGauge)salesToLastYearGauge#salesToLastYearNA%salesToTargetGaugeMinMax#ValueStringFormatPART_Text{0}{0:}'HideAdvancedOptions'ShowAdvancedOptionsFieldListLayouty/PivotGridDemo;component/Modules/FieldsCustomization.SL.xaml'ShowLayoutListGroup%customizationStyle#ShowHideFieldListadvancedOptionscurrentLayout)customizationLayoutsfieldOrderDay'fieldOrderDayOfWeek'fieldOrderDayOfYearfieldFirstNamefieldLastNameShow Field ListHide Field Listi/PivotGridDemo;component/Modules/FilterPopup.SL.xamlPivotGridGroup1PivotGridGroup2	DateQtr {0}
 Total!Order Date ({0})m/PivotGridDemo;component/Modules/GroupInterval.SL.xamlcbGroupInterval#ceProductInterval1fieldProductAlphabeticalfieldOrderDate_/PivotGridDemo;component/Modules/Groups.SL.xamlButtonCollapseButtonExpandPivotGridGroup3o/PivotGridDemo;component/Modules/MultipleTotals.SL.xaml�gData Source=http://demos.devexpress.com/Services/OLAP/msmdpump.dll;Initial Catalog=Adventure Works DW Standard Edition;Cube Name=Adventure Works;query timeout=2;connect timeout=2;3Cube Name=Adventure Works;[Product].[Product].[Product]C[Date].[Calendar].[Calendar Year]?[Measures].[Total Product Cost]3[Measures].[Freight Cost]7[Measures].[Order Quantity]c2+DataSourceDialogStyleOLAP ConnectionIDrillDown operation returned no rows9Drill Down Results: {0} RowsError

 !ShowErrorMessage!HideErrorMessagei/PivotGridDemo;component/Modules/OLAPBrowser.SL.xaml+ShowErrorMessageGrouperrorBordererrorText)showConnectionButtonfieldLista/PivotGridDemo;component/Modules/OLAPKPI.SL.xaml!cbStatusGraphicscbTrendGraphicsfieldFiscalYear'fieldFiscalSemester%fieldFiscalQuarter)fieldInternetRevenuefieldGoalfieldStatusfieldTrendk/PivotGridDemo;component/Modules/OrderReports.SL.xamlgroupOptionsorderIDFilterfieldOrder And {0} {1} #{2}#<=>=e/PivotGridDemo;component/Modules/Prefilter.SL.xamldeFromDatedeToDatek/PivotGridDemo;component/Modules/PrintOptions.SL.xaml;Phase must be between 0 and 7phaseheaderTemplateo/PivotGridDemo;component/Modules/PrintTemplates.SL.xamlfieldMoonPhasec/PivotGridDemo;component/Images/MoonPhase/{0}.pngDrill Down Formo/PivotGridDemo;component/Modules/ProductReports.SL.xamlgbxOptionsshowDrillDown#cbxShowCategories!spGroupingLayout!tbGroupingLayout#cbeGroupingLayout!fieldAverageSale!fieldMinimumSalei/PivotGridDemo;component/Modules/RIAServices.SL.xamllistBoxEdit!RiaConfigurationIConnection could not be established.!Connection ErrorOriginalBrief viewCPivotGridDemo.Data.LayoutSamples.BriefView.xmlFull viewFullView.xmlm/PivotGridDemo;component/Modules/Serialization.SL.xaml'restoreLayoutButton+layoutSamplesComboBoxi/PivotGridDemo;component/Modules/SingleTotal.SL.xamlcbFieldcbSummaryType9ceShowColumnGrandTotalHeader/ceShowColumnGrandTotals%ceShowColumnTotals3ceShowRowGrandTotalHeader)ceShowRowGrandTotalsceShowRowTotalsAceShowGrandTotalsForSingleValues7ceShowTotalsForSingleValuesm/PivotGridDemo;component/Modules/SortBySummary.SL.xamlQty (Var)Qty (%)Qty (Rank)Qty (Index)Qtyw/PivotGridDemo;component/Modules/SummaryDisplayMode.SL.xaml;checkAllowCrossGroupVariation9checkHideEmptyVariationItems)cbSummaryDisplayTypefieldDatefieldQuantity1e/PivotGridDemo;component/Modules/TopValues.SL.xaml!seTopValuesCount/checkTopValueShowOtherso/PivotGridDemo;component/Modules/TotalsLocation.SL.xaml-cbColumnTotalsLocation'cbRowTotalsLocationNewBonus)UnboundFieldTemplate
field_w/PivotGridDemo;component/Modules/UnboundExpressions.SL.xamlcbSalesPersonteBonusNamebtnAddFieldbeExpressionfieldOrderCount#fieldNewYearBonus)fieldOrderCountBonusremoveBonus.,$�m�_��A�K�,���Q|�׾�y���T��-1 ConnectionStringCatalogsComboCubesComboUserComboPasswordComboConnectAE   I I M M Q Q U U  Y ] aI a  IMQU((I(M(Q(Uei m q q u (q 
 
my(
 }����q1
 }�� �� �� ������������}
��}0��}0	����I}
��}������}��}��}0 } }(}( �� �� < ��1 <������ 1 1 �� ����(1(�� �� �� ��DD
(All)��  ��(
������	 1��\��
�� � � �	�
 �
�	��� �B[Date].[Calendar].[Calendar Year]:[Product].[Product].[Product]>[Measures].[Total Product Cost]2[Measures].[Freight Cost]6[Measures].[Order Quantity]Z �! �%	 �� �) �-  �1 �1 �5�9�= �A�E���I)

�� �� �I �I �I(�I�M	 �Q1
 �Q1	 �U1 �Y�Q1	(�Q1�]1�8V�6N5�a�e�i �i �m �m  �i �q �� �� �u �y �}������(�� �Q	 �Q�Q(�Q 99 �� }�� A}}��} A A   �� �� ��  ��-	 �U�U  ��U � ��
 � � �!A}}�%��q �- �1}  �5u
uu�5u �= �� �I �M �M �Y9 �] 

���  ��� �e�
uu�]�a�A�E�Q�a�]�] �u�qu} �� �� �� �� ��1�� ��   �� 	 ��  �� �� �� ����	���� �������U��  �� �� �� ������ ��	���� ��	���� �Q �������U�� V���������������Q�������U�������U���U���U������ 
 �� �� �� � �
 �U���U���1��������U�� �
�	��}0	��}000000000 �Q�� �5	�5}0 �9	�9}0 	
}�A��
 �A �Q������}0�9}0 �E �E �I �I �M �Q �Q �U �������� �Y �Y �] �]}	���i �m�q�u 1 �y �}  �y ���q���=} ����<��<��< ���� �� �������=����<���Y�	�� �� 1��
 ���� �� ��D���� ������D �� ����  ��
���� ���q1 �� 
�A�A ��	������	���� ��


 �- ��
�-

-
 �� 







�� �� �� �� ���q�U �	�	�	�UU� ���� �
�	�U�
�	 � �! �%�=�����Y�	 ��  �)�q��U��U1�1�U��U1 
q�]�] 111111
 ���- �-u �5�a	��� �-�- �E �M�9�=�a�a�� �Q�q�U	�9�U1x�1 �a �i�e��  �q �u�m �y|��
  �A�} �} 
��	�A��  )�A��
����
��	




 )���� �q�� �� ���q�� ���� �����9�-�=�a���Q1	 ����1���e ���e ����1	 - ��
q���a
�����a�Q����
�Q�����i 
�� �m�=��1�Y�	�U11�U11���U1�=�q�Y�	} �q �q	������ ���q ����1�U1���=���=�Y�	�Y�	��1�U1 �� ���5
 �5��9
������ �� ��  ����BSilverlight,Version=v5.0TFrameworkDisplayName
Silverlight 450DevExpress DXPivotGrid for Silverlight Main Demo+&DevExpress DXPivotGrid for SilverlightDeveloper Express Inc.3.Copyright (c) 2000-2013 Developer Express Inc.DXPivotGrid.Ag
13.1.4.0TWrapNonExceptionThrows	E�Qؒ�tRSDS�uupʌC��
��`6c:\Projects\13.1\BuildLabel\Temp\NetStudio.v13.1.2005\PivotGridDemo\PivotGridDemo\obj.SL\Release\PivotGridDemo.pdb�>� 0�_CorDllMainmscoree.dll�% �0�HX���4VS_VERSION_INFO��

?DVarFileInfo$Translation�8StringFileInfo000004b0|1CommentsDevExpress DXPivotGrid for Silverlight Main DemoPCompanyNameDeveloper Express Inc.�1FileDescriptionDevExpress DXPivotGrid for Silverlight Main Demo4	FileVersion13.1.4.0DInternalNamePivotGridDemo.dll�/LegalCopyrightCopyright (c) 2000-2013 Developer Express Inc.x'LegalTrademarksDevExpress DXPivotGrid for SilverlightLOriginalFilenamePivotGridDemo.dllp'ProductNameDevExpress DXPivotGrid for Silverlight8	ProductVersion13.1.4.0<	Assembly Version13.1.4.5�P4PKc�Bc�nw����&$System.Windows.Controls.Data.Input.dll
 y�L:�b�y�L:�b�y�L:�b�MZ����@���	�!�L�!This program cannot be run in DOS mode.

$PEL���N�!�.� @ @�I@���K(	�� xI  H.text4� � `.rsrc(	
�@@.reloc �@B�H�I,b	��?P �e����e�6�q�H!I����s�"�6����F��C`�-����=a��XIT"HG��@%�$�D7#�)!9�耆�0���晨K�1�A70t\?r�!���a!;���PT�Ze"��%b3����F"(
*B�(
o
*0(
u
,o *(
**"(
*0K(

(
,:(
u,+o
,#o
u,o
+o
o

**rp*"(
*B�	(
o
*04(
u	
,og,ogo
u,*(
*6-*(
**0	(
u	
,op*J~�"o
*F~o
�"*( 
*�r
p�"(
�(
�"s!
("
�*0(o
�(�*
(*(&
*03
~('
, r7p�(
o(
s)

�~*~*�*V(r{p~o*
*V(r�p~o*
*V(r�p~o*
*V(r+p~o*
*V(rWp~o*
*0h(.
�(
(/
~s0
(1
&�9s2
(3
�:s4
(5
(6
,�(
o
(!*0>u
,3(7
,#(8
,(7
o9
(8
o9
.o;*F~(
u*R}~(
*0u
,oA*F~(
u6*6~(
*F~	(
u7*6~	(
*F~
(
�"*J~
�"(*0Ju
,?(-7~
(7
((:
(�r�p�(;
s<
z*F~(
�"*J~�"(*0Ju
,?(-7~(7
((:
(�r�p�(;
s<
z*F~(
u*6~(
*0 u
,o5,
o;o<*F~
(
u*6~
(
*0�u
9�(=
o>
,(8
(?
(@
�+(8
(A
�o'.o(o;(7
u(8
u
�=sB
�>s2
�?s2
,oC
oD
oE
	,	oF
	oG
	oH
o<*{*"}*{*N(I
(B(A*V}(;(<*s*�{- (;}�9s2
(J
*(@*0}
(-(
-(K
(-(�
+(0,(0(�
(3.1(4{-"
(3,(3o�
~	(
*0B(-(
-	(++%(0,(0(L
�(++(+(B*(<*:(((B*:(((B*v(M
-r�p+r�p(N
&*�( (
-r�p+r�p(N
&*0V(*,1(',( (
-rp(N
&*r)p(N
&*('-rGp+rip(N
&*0�r�p�(
�(
�sO
sP
(Q
�r�p�(
�(
�"sO
sP
(Q
�r�p�6(
�(
(Q
�r�p�7(
�(
(Q
�	r�p�"(
�(
�"�)sO
sR
(Q
�
r�p�"(
�(
�"�,sO
sR
(Q
�r�p�(
�(
�/sO
sP
(Q
�rp�(
�(
�2sO
sP
(Q
�
*0){
(T
t|(+
3�*0){
(V
t|(+
3�*0){
(T
t|(+
3�*0){
(V
t|(+
3�*0(.
�	(
(/
s�}sW
}s�}{�vsX
oY
�}s2
(3
�~s2
(Z
�s4
(5
(6
,u(c(�(
o
s�o[
(c(�(
o
s�o[
(c(�(
o
s�o[
*~-rps\
z~o
�"*�-rps\
z~�"o
*0$(=
-+(=
o]
u
,(l*F~(
u7*6~(
*F~(
�
*J~�
(
*0	u	
,oy*F~(
�"*J~�"(
*F~(
�"*J~�"(*0Ju	
,?(-7~(7
((:
(�r/p�(;
s<
z*F~ (
�"*J~ �"(*0Ju	
,?(-7~ (7
((:
(�rCp�(;
s<
z*2~!(
*6~!(
*0	u	
,oz*F~"(
uO*6~"(
*F~#(
u7*6~#(
*F~$(
u*6~$(
*0p(7
u
u	�xsB
{,{oC
},oC
(8
u
	,	oF
{o�oy*{*2{s^
*{*{*{*0�(k-*o��
o��
(j,*o�o_
0+o�o`
o�o�o_
0+o�o`
o�.T(k-*oa
oa
.oa

oa
(b
*(r
,*oc
oc
(j,*o�o�(j,*o�o�(j&*0'","
+od
oe
,*X
of
2�*0G#-,,oe
,T*(k-*uT
uT,,og
T*T*n-,+T*-T*T*05%-*u	
,oy*+(h
(lX(i
2�*0�'(I
�tsj

�ssk
�usl
{,${om
{on
{oo
rip(p
uD}{,5{oq
{or
{(dos
{ot
r�p(p
u}(y(|({*0+{
,ou
*s	*6(f(w*0B,{ov
.,(:
(�{ov
�Q�(;
+(
*0�-,,3*sw

ox
+ox
(y
%-�+Yoz

	-*	1F	Yo{
,-*(i
+(h
3*3*X2�(y
%-�*Fo|
3(w*"(w*0/{
,o}
*0�0o~
,Jo~
o
+!o�
t
,��s�
o�o�
-��ua
	,	o�
�o�
,Qo�
o
+"o�
t,��s�
o�o�
-��ua,o�
�{ov
�(T(y*-Ag/�04uD
9	o�
u9�(Q9�o�o_
-	}+(o�{(i/o�o`
}{s�
	on(�
u,(�
,o�
	o�-&	o�,	o�o�,	o�o�o�
&o�o_
1=o�	o�(i2X%o�o_
]+o�o`
}*0
8o�
u
9�o�
9�o�
o�
9�9�o�
o�
o
oc
(
-oc
+o�
		(�
(�
(�
{o�
,'{o�

{	o�
&{o�
&o�
-Y(I,Q(�,	o�u,s�s�{o[
{o�
*0�9s�

(co�

+7	o�
,-o�3
(N_-o�3(N_,o�
	o�
-��
	,	o�
��hs�
o�
{o�
o�
+(�
{o[
(�
-���o�
�({(z*CU
�!��{,+(Y,{(Yo�
*{(qo�
*�{ov
�(W(V-r�p+r/p(N
&*�(M
,r�p(N
&*r�p(N
&*0Z(`-8{-0(y
u}{,{�xsB
oF
�}s2
(J
}*�{,{�xsB
oC
�~s2
(�
}*"(|*fo�
r�p(�
,(y*0�r�p�"(
�	(
�"�KsO
sR
("
�r�p�7(
�	(
(Q
�r
p�
(
�	(
�
�PsO
sR
(Q
�rp�"(
�	(
�"sR
(Q
�r/p�"(
�	(
�"�UsO
sR
(Q
�rCp�"(
�	(
�"�XsO
sR
(Q
� rEp�(
�	(
�[sO
sP
(Q
�!rSp�O(
�	(
(Q
�"rqp�7(
�	(
(Q
�#rp�(
�	(
�bsO
sP
(Q
�$*"(�*2(�*0@(&
(�(�(�(�s�
(�,
(�o�
*{+*r{+.}+r�p(�*{,*r{,.},r�p(�*{-*�{-(�
,}-r�p(�*{.*�{.(�
,}.r�p(�*{0*"}0*0*=(�
(�
(��(��(;
*0>{/
,
s�
o�
*0)@{/
(T
td|/(+
3�*0)@{/
(V
td|/(+
3�*&(�*V(&
(�(�*{1*"}1*{2*"}2*00Au
-*(�o�(�
,(�o��**0#C(�r�p(�oc
(�

o�
*r(�
(�(�(�*{6*"}6*{7*"}7*{8*"}8*0�(�
�(
(/
s�
}=~>s0
(1
&��s2
(3
��s4
(5
(
�};(6
,�(
o
(�*0>Du
,3(7
,#(8
,(7
o9
(8
o9
.o�*F~?(
�"*f}:~?�"(
*0Du
,o�*F~@(
�"*J~@�"(*0Ju
,?(-7~@(7
((:
(�r�p�(;
s<
z*F~A(
u*6~A(
*0 Du
,o�,
o�o�*F~B(
u*6~B(
*0�Eu
,xo�{=o�
(7
u(8
u��sB

,	oC
,,	oF
(�
o�
1{=o�
o�
o�*{C*"}C*{9*N(I
(�(�*V}:(�(�*�(�
(6
,-�(
o
(�{<-�+};*s*0}<(�
�}<�*(�*�{9- (�}9��s2
(J
*0�G
(�(
-(K
(�(�
+(�,(�(�
(�.p(�(�, (�o�
	, {;,	(�+{;,(�{:-*(�,
(�o�+~?�"(
*n{=o�
�(�(�*0co�
-&{=o�
o�
-A{=o�
o�
+.o�
3%{=o�
o�
,{=o�
o�
&(�*v(M
-r�p+r�p(N
&*v(�-r�p+r�p(N
&*v(�-rp+rp(N
&*0r�p�(
�(
��sO
sP
(Q
�>rp�"(
�(
��sO
sP
(Q
�?r�p�"(
�(
�"��sO
sR
(Q
�@r�p�(
�(
��sO
sP
(Q
�Arp�(
�(
��sO
sP
(Q
�B*0oHs�
(�

+	o�
,o�3o[
	o�
-��
	,	o�
�o�
+o�
(�
&o�
-��,o�
�*
&3
EbN+(�
(v
0�*(�
*~-rps\
z~Do
u*n-rps\
z~Do
*0&JQQ-*-~Do
u
,*o9
Xo�
8��
	o�
�!(
@�	o�
t!o�
,uo�
,mo�
o�
,`o�
-oK
+o�
QP,Do�
o�
3Q+BP,*o�
o�
o�
Po�
o�
o�
(�
/QX�i?I���P,*Po�
o�
o�
P(�~Do
**0�M9�(
:�(�
(�,~s�o�

	+J�uv,	o�+'uw,o�
o�o�
o�X�i2�o�-o
o�**0TR
�x.�o�
,6+,�o�

	,	o�
-*�iY3	*	o�

X�i2�*0"Uuy
,o�
%-&o9
*o9
*(&
*�r5p�(
�(
("
�D*{G*r{G.}Grp(�*{F*�{F(�
,}Fr�p(�*{E*�{E(�
,}Er[p(�*0>{H
,
s�
o�
*0)@{H
(T
td|H(+
3�*0)@{H
(V
td|H(+
3�*(&
*���N?�I�+RSDS���@ޅ�N�]�����System.Windows.Controls.Data.Input.pdbBSJBv4.0hl"#~�"�&#Strings�Il#USO#GUIDO#BlobW�		�%3yZ���IV1]�
*

`N
}N
�
�

�N
��
N
.N
KN
�j��
��
�N
N
3j
HA^��s��
�A
�A
�N�/s]E
gA|E
�A���s��
*AD�
yf
�
��
��
�
!NWApA�E���������'�E�h��A�E��
A
+A
EATEm�����is���E����	E	�
D	)	Q	E
k	A
�	|	�	�	�	�	3


m


~
A�
��


�
A
�
)	
)	
A=(h����E�����nE
�{
�)	��
�{
�A
�{
A6
A�
s�
E:E
i)	{w
�A
�A
�A�A
A
 

XN
bN����
�A
�N2D
�A�NsM2sMFsM	fz���zu��u�E��E�D�E�%�Eu*�$Eu1�@E�3�ZE�6�zEq9��ED��EuD��EuE���EuI�6I��	�	�3	�3	1��6��6��6�6�6+�6;�6P�_6	Q�Q�	Q�e�	�	��	��	��	��	�3	��	��	�	+�	6<�6X�6k�6z�6��6��6��6��6��6P���
V���
V���
V���
V��
S��	�
&�
0�	9�	H�
X�
s �	� ��
V�� �
V�� �
� 3	!7$!�	�3	`!3	v!3	�!3	�Y1��6�!�6+�6;�6P�_6	3{"�1#�	:#�	G#3	H�
V�k#�	V�{#�	V��#�	V��#�	V��#�	V��#�	V��#�	V��#�	V��#�	V��#�	V�	$�	V�$�	V�#$�	V�1$�	V�B$�	V�P$�	V�a$�	V�t$�	� �H�� ��'� �#'!���!�H�$!�#'{!���!��'�!�H��!��'�!�#'�!��9�!����!�"�^	)"���;"�HC"��		t"��
	�"�I��"�H�"��"	�"���#��(	
#�/	
 #�$/	
6#�E/	
L#�g/	
b#��/	
x#�H
�#��:	
6$��'H$��`$��:	}$��D	�$��J	�$�Q	�$�W	�$�.��$�<�$�J:	:%�e�L%�q`%�}:	�%��'�%���%��:	&��^	&��$&��:		'�c	 '�h	 '�2�!"'�Y!6'�B!L'�Jn	!T'�at	!~'��|	#�'��%(��&b(���	&j(��t	(y(�t	*�(�,�(�$,�(�;,0)��		,�*�
,+�!
-<+��
.t+�#
/�+�H0�,�?�0�,�c	1�,�z:	3,-��Q	5>-��W	5L-��
6^-��#
6t-��:	7�-���9�-�9�-��:�-�-:�-�;:	;2.�V�=D.�m=X.��:	>�.��5@�.��N@�.��:	A�.��)
C�.��/
C	/��Q	D/�W	D)/��+E;/��6
EL/��:	F�/�/<
H�/�:F
H�/�2�H�/�NP
H�/�hV
H�/��[
H1��c
J41��p
L�1��p
O�1�x
R�1�YS�2�C
S�2�Jn	T�2�\T3�q'TT3���
T�3���
V4���
X4���
Z44��
\$5�N^H6���	_d7�'aP8�=a�8�;a�8�b�8�]t	cB9�vt	e|9��|	g�9���i�9��		k�;�Hk�;�Hk�;�H�
l�;��5q<��Nq!<���
r)<���
rF<��'sN<��sp<��'tx<��t�<�
 u�<� u�<��'v�<�% v=�	H w@=�	\ xu=�Hy=�H"z�=��'|�=�� |�=�� *}�=�� 0}�=��~�=��#>�H;@>�H!��H>�T!�Q>��
C�Y>�`H�b>��N�j>��S�t>�H�?��:	�N?��!��`?��!�|?��!:	��?�e���?�q��?�}:	�@��'�(@���8@��:	�d@��^	�v@����@��:	�A�c	�A�h	�$A�2��,A�Y�@A�B�VA�5���A�Jn	��A�
"N��A�""|	��A�9"t	�B����B����B���	�[C��yC�F"��C�;��C��		��D�Z"�
�hE�p"�|E�H��E��"c��E��"k��E��"t��F��"���G����H�#��2H�H�:H��		�`H��!��hH��!��H��'��H����H�S#'��H�_#��H�% �I�	H �8I�	\ �mI�H�����vzvv�zvz��z��zzz��z��z��z��zz�z��z�z�z�zzzzVVz��zz��zz��z��z��zzz�����������
<���z�z�z�z�zz�NNz�z�z�z�qqy���zzzzz; zz; ; � zzv<!A!zzz��z��z��z��z��z�!"zz�z��z�f"VVz�"��"�"�"�"�"#(#zzz; zzy��	HHH!H
)H1H9HAHIHQHYHaHiHqHyH�H�H�H�H�� �'�+�#'�n0��5��'��'��9��2?;GHHN	US!H)H1H�H�a�*g9Hm97uQH}iHqHaHa�NyH���H��:��H�a�������5��5���A��$��H�y�������������H���������#��>��K��Y�x���5	��a����H�H		SH)HAt	I�	#A�	$HYH�,J
_�`
�4z
nqH��
+<H|D�
�D�
�a�
���
��'L�
���T�
���
��N��W��H��H��H��������#�a;��L��b���������4�
�\H\z
n���\�\�
�����Q
�
y5!H�R
�	[
Qc
�p
5��
��
%��
,a�
���
5��
31�
5��A���9�'@$.F$�
L4�	F$�	F�US$`YdH4
ily{dz
ntH�d��4�d
�|y{|R
���N����'���aH�HDz
n���H!���'�qH�H�H��	���
���
��z
n�5���
��FF��	F4O
,H�o��y��;�����y��5y���'���U!�i'�x'��'��.���������<�	@�	��
�G��
��
��
�G��
$�(�,�0�4�8	<&@GDRHeL~P�T�X�\�`�d
h
)[B
.sG.�2.�8.{�.�.3�.g.�.�.#�.+G.K".;�.C�.[G.k�.SG.cMI[B
�+G�#G�+L�Gcic�cc1c�c�c�c4k`#c4#�Y#c#c�#k�#c�#k�C+G�#G�c��c�c4�c��c"�cU`+G�+G#G!#GA#G`#G�#G�#G�#G#Ga#G�#G�#G�#G�#G�#G#G�#G�#G�#G�#G#G #G#G #G���	������	����3	�	���6	�
���	
�	(-4E�
PT]bkp|��������7����	���+4=FK�
Q]�	bfk����	���������	
+H�H�	$&)/�<
�$K
�$Q
�$Q
�$Q
Q
�$Q
%U
%Y
%_
,%e
6%e
�U
>%i
�n
E%e
Q%_
\%s
c%e
x%e
�%e
�%x
�%|
�%_
>%�
�%�
�%�
E%e
�%�
�%�
	&x
&�
&U
"&U
0&�
8&U
��
E&e
M&�
>%�
R&e
6%e
�U
>%i
�n
E%e
R&e
%U
]&U
EDFG����	
 !#$&%('+*-.01435!L#M#N%O%Q'R'T)S)V+W+Z-Y-\/]/_1^1a3`3c5d7e9f;g=�?�?�A�A�C�C�E�E�G�G�I�I�K�K�M�M�O�O�Q�Q�S�S�U�U�W�W�Y�Y�[�[�]�_�_�a�a�c�c;�:NWft����as�������
�5�5�5A5>e&k=�&�0�C��<Module>System.Runtime.CompilerServicesRuntimeCompatibilityAttribute.ctorSystem.ReflectionAssemblyFileVersionAttributeAssemblyCompanyAttributeCompilationRelaxationsAttributeExtensionAttributeAssemblyCopyrightAttributeSystem.ResourcesNeutralResourcesLanguageAttributeAssemblyTitleAttributeAssemblyDescriptionAttributeAssemblyConfigurationAttributeSystem.Runtime.InteropServicesComVisibleAttributeSystem.Windows.MarkupXmlnsDefinitionAttributeSystem.Runtime.VersioningTargetFrameworkAttributeAssemblyTrademarkAttributeAssemblyProductAttributeGuidAttributeSystemCLSCompliantAttributeXmlnsPrefixAttributeSystem.Windows.Automation.PeersFrameworkElementAutomationPeerSystem.WindowsFrameworkElementTypeRuntimeTypeHandleGetTypeFromHandleMemberInfoget_NameUIElementget_OwnerGetNameCoreAutomationControlTypeSystem.Windows.ControlsTextBlockStringIsNullOrEmptyContentControlget_Contentget_TextObjectToStringSystem.Windows.Automation.ProviderIInvokeProviderPatternInterfaceGetPatternInvokeDependencyObjectDependencyPropertyBooleanSetValueGetValuePropertyMetadataRegisterAttachedSystem.DiagnosticsDebuggerNonUserCodeAttributeCompilerGeneratedAttributeSystem.CodeDom.CompilerGeneratedCodeAttributeResourceManagerSystem.GlobalizationCultureInfoReferenceEqualsAssemblyget_AssemblyGetStringSystem.ComponentModelEditorBrowsableAttributeEditorBrowsableStateControlTemplateVisualStateAttributeStyleTypedPropertyAttributeset_DefaultStyleKeySystem.Windows.DataBindingBindingExpressionBaseSetBindingRoutedEventArgsRoutedEventHandleradd_LoadedDependencyPropertyChangedEventArgsDependencyPropertyChangedEventHandleradd_IsEnabledChangedDesignerPropertiesget_IsInDesignToolget_OldValueget_NewValueGetTypeControlTemplateStyleget_CurrentCultureIFormatProviderFormatInvalidOperationExceptionEventHandler`1ValidationErrorEventArgsApplicationget_Currentget_IsRunningOutOfBrowserWindowGetWindowSystem.Windows.InputFocusManagerGetFocusedElementremove_BindingValidationErrorremove_GotFocusremove_LostFocusadd_BindingValidationErroradd_GotFocusadd_LostFocusOnApplyTemplateAutomationPeerremove_LoadedBindingExpressionget_DataContextValidationGetHasErrorget_IsEnabledVisualStateManagerGoToStatePropertyChangedCallbackRegisterListBoxTemplatePartAttributeSystem.Collections.GenericDictionary`2SelectionChangedEventArgsDelegateCombineSystem.ThreadingInterlockedCompareExchangeRemoveSystem.Collections.SpecializedNotifyCollectionChangedEventArgsNotifyCollectionChangedEventHandlerSystem.Collections.ObjectModelObservableCollection`1add_CollectionChangedadd_UnloadedCollection`1AddArgumentNullExceptionget_RootVisualDataTemplateReadOnlyObservableCollection`1get_Countget_Itemget_TabIndexInt32CompareToIList`1EqualsICollection`1IComparableSystem.Windows.MediaVisualTreeHelperGetChildGetChildrenCountMouseButtonEventHandlerKeyEventHandlerSelectionChangedEventHandlerMouseButtonEventArgsKeyEventArgsremove_MouseLeftButtonUpremove_KeyDownSystem.Windows.Controls.PrimitivesSelectorremove_SelectionChangedGetTemplateChildadd_MouseLeftButtonUpadd_KeyDownItemsControlSystem.CollectionsIEnumerableset_ItemsSourceadd_SelectionChangedList`1GetParentIndexOfKeyget_KeyIEnumeratorIDisposableIListget_OldItemsGetEnumeratorPropertyChangedEventArgsPropertyChangedEventHandlerMoveNextDisposeget_NewItemsget_SelectedItemFromElementAutomationEventsListenerExistsRaiseAutomationEventFocusget_OriginalSourceValidationErrorget_Errorget_ErrorContentGetHashCodeget_InvariantCultureConcatContainsKeyValidationErrorEventActionget_Actionset_ItemIEnumerator`1EnumeratorComparison`1SortClearset_Contentremove_Unloadedget_PropertyNameop_EqualityEnumFlagsAttributeINotifyPropertyChangedop_InequalityEventArgsGetErrorsReadOnlyCollection`1OnContentChangedContainsRemoveAtFieldInfoBindingFlagsGetFieldsget_FieldTypeGetBindingExpressionget_ParentBindingPropertyPathget_Pathget_DataItemBindingModeget_ModeStringComparisonComparePropertyInfoSystem.ComponentModel.DataAnnotationsRequiredAttributeDisplayAttributeGetCustomAttributesGetDescriptionGetNameCharSplitGetPropertyget_CanReadget_PropertyTypeICustomTypeProviderGetCustomTypeSystem.Windows.Controls.Data.Input.dllmscorlibSystem.CoreDescriptionViewerAutomationPeerLabelAutomationPeerValidationSummaryAutomationPeerExtensionPropertiesSystem.Windows.Controls.CommonExtensionsResourcesSystem.Windows.Controls.Data.InputDescriptionViewerValidationSummaryValidationSummaryFiltersValidationSummaryItemValidationSummaryItemSourceValidationSummaryItemTypeFocusingInvalidControlEventArgsLabelValidationItemCollectionValidationHelperValidationMetadataVisualStatesownerGetClassNameCoreGetAutomationControlTypeCorepatternInterfaceSystem.Windows.Automation.Provider.IInvokeProvider.InvokeAreHandlersSuspendedSetAreHandlersSuspendedobjvalueGetAreHandlersSuspended.cctorSetValueNoCallbackpropertyresourceManresourceCultureget_ResourceManagerget_Cultureset_Cultureget_UnderlyingPropertyIsReadOnlyget_ValidationSummaryHeaderErrorget_ValidationSummaryHeaderErrorsget_ValidationSummaryItemget_ValidationSummarySampleError_descriptionOverridden_initializedDataContextPropertyDescriptionPropertyGlyphTemplatePropertyToolTipStylePropertyIsFocusedPropertyIsValidPropertyPropertyPathPropertyTargetProperty<ValidationMetadata>k__BackingFieldOnDataContextPropertyChangeddeget_Descriptionset_DescriptionOnDescriptionPropertyChangeddepObjget_GlyphTemplateset_GlyphTemplateget_ToolTipStyleset_ToolTipStyleget_IsFocusedset_IsFocusedOnIsFocusedPropertyChangedget_IsValidset_IsValidOnIsValidPropertyChangedget_PropertyPathset_PropertyPathOnPropertyPathPropertyChangedget_Targetset_TargetOnTargetPropertyChangedget_ValidationMetadataset_ValidationMetadataget_InitializedRefreshOnCreateAutomationPeerDescriptionViewer_LoadedsenderDescriptionViewer_IsEnabledChangedLoadMetadataforceUpdateParseTargetValidStateTarget_BindingValidationErrorTarget_GotFocusTarget_LostFocusUpdateCommonStateUpdateDescriptionStateUpdateValidationStatePART_SummaryListBoxPART_HeaderContentControl_currentValidationSummaryItemSource_displayedErrors_errors_errorsListBox_headerContentControl_registeredParent_validationSummaryItemDictionaryFocusingInvalidControlSelectionChangedShowErrorsInSummaryPropertyErrorStylePropertyFilterPropertyFocusControlsOnClickPropertyHasErrorsPropertyHasDisplayedErrorsPropertyHeaderPropertyHeaderTemplatePropertySummaryListBoxStylePropertyadd_FocusingInvalidControlremove_FocusingInvalidControlGetShowErrorsInSummaryinputControlSetShowErrorsInSummaryOnShowErrorsInSummaryPropertyChangedoget_ErrorStyleset_ErrorStyleget_Filterset_FilterOnFilterPropertyChangedget_FocusControlsOnClickset_FocusControlsOnClickget_HasErrorsset_HasErrorsOnHasErrorsPropertyChangedget_HasDisplayedErrorsset_HasDisplayedErrorsOnHasDisplayedErrorsPropertyChangedget_Headerset_HeaderOnHasHeaderPropertyChangedget_HeaderTemplateset_HeaderTemplateget_SummaryListBoxStyleset_SummaryListBoxStyleget_Errorsget_DisplayedErrorsget_ErrorsListBoxInternalget_HeaderContentControlInternalCompareValidationSummaryItemsxyFindMatchingErrorSourcesourcessourceToFindTryCompareReferencesreturnValReferencesAreValidvalUpdateDisplayedErrorsOnAllValidationSummariesparentOnFocusingInvalidControlExecuteClickInternalGetHeaderStringSortByVisualTreeOrderingcontrolXcontrolYErrorsListBox_KeyDownErrorsListBox_MouseLeftButtonUpErrorsListBox_SelectionChangedErrors_CollectionChangedExecuteClickUpdateDisplayedErrorsUpdateHeaderTextuseTransitionsValidationSummary_LoadedValidationSummary_UnloadedValidationSummary_IsEnabledChangedValidationSummaryItem_PropertyChangedvalue__NoneObjectErrorsPropertyErrorsAllPROPERTYNAME_ITEMTYPE_context_itemType_message_messageHeaderPropertyChanged<Sources>k__BackingFieldmessagemessageHeaderitemTypesourcecontextget_Contextset_Contextget_ItemTypeset_ItemTypeget_Messageset_Messageget_MessageHeaderset_MessageHeaderget_Sourcesset_SourcesNotifyPropertyChangedpropertyNameadd_PropertyChangedremove_PropertyChanged<PropertyName>k__BackingField<Control>k__BackingFieldcontrolset_PropertyNameget_Controlset_ControlObjectErrorPropertyError<Handled>k__BackingField<Item>k__BackingField<Target>k__BackingFielditemtargetget_Handledset_Handled_isRequiredOverridden_canContentUseMetaData_isContentBeingSetInternallyIsRequiredPropertyget_IsRequiredset_IsRequiredOnIsRequiredPropertyChangedoldContentnewContentSetContentInternallyLabel_IsEnabledChangedLabel_LoadedUpdateRequiredStateClearErrorserrorTypeClearItemsValidationMetadataPropertyGetValidationMetadataSetValidationMetadataParseMetadataelemententitybindingExpressionbindingPathentityTypepropertyPathGetCustomOrCLRTypeinstance_caption_description_isRequiredget_Captionset_CaptionGroupValidationStateValidStateInvalidStateValidFocusedStateValidUnfocusedStateInvalidFocusedStateInvalidUnfocusedStateEmptyStateHasErrorsGroupCommonStateNormalStateDisabledGroupRequiredStateNotRequiredStateRequiredGroupDescriptionStateNoDescriptionStateHasDescriptionCultureUnderlyingPropertyIsReadOnlyValidationSummaryHeaderErrorValidationSummaryHeaderErrorsValidationSummarySampleErrorDescriptionGlyphTemplateToolTipStyleIsFocusedIsValidTargetInitializedErrorStyleFilterFocusControlsOnClickHasErrorsHasDisplayedErrorsHeaderHeaderTemplateSummaryListBoxStyleErrorsDisplayedErrorsErrorsListBoxInternalHeaderContentControlInternalContextItemTypeMessageMessageHeaderSourcesPropertyNameHandledItemIsRequiredCaptionSystem.Windows.Controls.Data.Input.g.resourcesSystem.Windows.Controls.Resources.resourcesLabel)AreHandlersSuspendedCSystem.Windows.Controls.Resources9UnderlyingPropertyIsReadOnly9ValidationSummaryHeaderError;ValidationSummaryHeaderErrors+ValidationSummaryItem9ValidationSummarySampleErrorIsFocusedIsValidDisabled
NormalHasDescriptionNoDescriptionValidFocusedValidUnfocused!InvalidUnfocusedInvalidFocusedDataContextDescriptionGlyphTemplateToolTipStylePropertyPath
TargetinputControlHasErrors%HasDisplayedErrorsSummaryListBox)HeaderContentControlEmptyItemType'ShowErrorsInSummaryErrorStyle
Filter)FocusControlsOnClick
HeaderHeaderTemplate'SummaryListBoxStyleContextMessageMessageHeader.NotRequiredRequiredInvalidValidIsRequired%ValidationMetadataCaption��&�&@��՗5
�      QUY  a  } �� �� 
��UU�� �� �� �� �� ������  �� �� U��	���� ���������� �������� �
 �
�!�!�!��8	
��8���

����,�1, �-�5, �A,
 �1�50   �I0 �M0 	������ �Y �] �a �� �u �y������  �} �� ����a�� �� �� ��   �� �y,	 ����, ��,
 ��	 ����,�10 ��
���y��
�A�������� 	 ����  ��� �� �� ����   ��|�׾�y����M>g�@3System.Resources.Tools.StronglyTypedResourceBuilder2.0.0.07TName
NoDescriptionT	GroupNameDescriptionStates8TNameHasDescriptionT	GroupNameDescriptionStates5TNameValidFocusedT	GroupNameValidationStates+TNameNormalT	GroupNameCommonStates��TPropertyToolTipStyleTPStyleTargetTyperSystem.Windows.Controls.ToolTip, System.Windows, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e-TNameDisabledT	GroupNameCommonStates7TNameValidUnfocusedT	GroupNameValidationStates7TNameInvalidFocusedT	GroupNameValidationStates9TNameInvalidUnfocusedT	GroupNameValidationStates��TPropertySummaryListBoxStyleTPStyleTargetTyperSystem.Windows.Controls.ListBox, System.Windows, Version=5.0.5.0, Culture=neutral, Publickeytoken=7cec85d7bea7798e.TNameEmptyT	GroupNameValidationStates��TProperty
ErrorStyleTPStyleTargetTypevSystem.Windows.Controls.ListBoxItem, System.Windows, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e��TNameSummaryListBoxTPTyperSystem.Windows.Controls.ListBox, System.Windows, Version=5.0.5.0, Culture=neutral, Publickeytoken=7cec85d7bea7798e2TName	HasErrorsT	GroupNameValidationStates2TNameNotRequiredT	GroupNameRequiredStates/TNameRequiredT	GroupNameRequiredStates.TNameValidT	GroupNameValidationStates0TNameInvalidT	GroupNameValidationStates   e < $����
������������H	���� �� �� �� �� Q H H �� �� �� ��SummaryListBox(HeaderContentControl0@�qQ	�,��8	���
 ��8 ��� ( ( �= �= a	 �1,	 �A, � q,,�I00�� 8	���� �i �e � �)(ItemType4���10
 40 4 4	 �10
 �10 ���� �� �� ��, ,0 , , 0 0	�y��H����H
HQ�H��UU ValidationStates
ValidInvalidValidFocusedValidUnfocusedInvalidFocused InvalidUnfocused
EmptyHasErrorsCommonStatesNormalDisabledRequiredStatesNotRequiredRequired"DescriptionStatesNoDescriptionHasDescription����((��(��((Q(H((((�=(a	(�1,	(�A,(�(q(4	(�10(��(,(0��$��$RSA1����g�w:�މ8���e� `Y>�Ēe���?�?�1��3��`!g-��1���
�/%�}�o��Y���5�L9�EC��;�&=����o��GP�\d��E��k*+G��e+��]�TWrapNonExceptionThrows5.0.61118.0Microsoft Corporation3.© Microsoft Corporation. All rights reserved.
en-us'"System.Windows.Controls.Data.Input$Silverlight Data Input ControlsZ=http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdkSystem.Windows.ControlsBSilverlight,Version=v4.0TFrameworkDisplayName
Silverlight 4Microsoft® Silverlight)$0a233d31-1d81-49cb-902b-83c87101e849F=http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdksdk  <i<i$$$��<  QQ��������	������	H����8��8��8���������Q$Q$����Q
�����Q�Q�Q$�����Y�]�a�Y�]�a	��8�y����������	�y��
���,,�������������,88
Q,�H,�y,,,��,��,�y,��,��,��������0<<QQ�����A��	�A��
H�@,,��,��,H�����H������	U��H����U������U������g=����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADPo��&themes/generic.xaml!{<<!--
// (c) Copyright Microsoft Corporation.
// This source is subject to [###LICENSE_NAME###].
// Please see [###LICENSE_LINK###] for details.
// All other rights reserved.
-->

<ResourceDictionary
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:ctl="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data.Input"
	xmlns:sys="clr-namespace:System;assembly=mscorlib"
	xmlns:vsm="clr-namespace:System.Windows;assembly=System.Windows">

	<!--ValidationSummary-->
	<Style TargetType="ctl:ValidationSummary">
		<Setter Property="IsTabStop" Value="False"/>
		<Setter Property="Background" Value="#FFEFEFEA"/>
		<Setter Property="BorderBrush" Value="#FFCECEC7"/>
		<Setter Property="BorderThickness" Value="1"/>
		<Setter Property="Padding" Value="0"/>
		<Setter Property="HeaderTemplate">
			<Setter.Value>
				<DataTemplate>
					<Border Background="#FFDC020D" CornerRadius="2" x:Name="Header" Margin="-1,-1,-1,0">
						<StackPanel Margin="6,2,6,4" Orientation="Horizontal" VerticalAlignment="Top">
							<Grid Height="13" Width="13">
								<Ellipse Margin="0" RenderTransformOrigin="0.5,0.5" >
									<Ellipse.Stroke>
										<LinearGradientBrush StartPoint="0.505,0.65" EndPoint="0.5,0.058">
											<GradientStop Color="#FFCA000C" Offset="0"/>
											<GradientStop Color="#FFFF9298" Offset="0.991"/>
										</LinearGradientBrush>
									</Ellipse.Stroke>
									<Ellipse.Fill>
										<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
											<GradientStop Color="#FFFFFFFF" Offset="0"/>
											<GradientStop Color="#FFFDC8C8" Offset="1"/>
										</LinearGradientBrush>
									</Ellipse.Fill>
								</Ellipse>
								<Path Fill="#DDD43940" Data="M5.5,2.5 L7.5,2.5 L7.5,8 L5.5,8 M5.5,9.5 L7.5,9.5 L7.5,10.5 L5.5,10.5"/>
							</Grid>
							<TextBlock Padding="4,1,0,0" Text="{Binding}" Foreground="#FFFFFFFF" FontWeight="Bold"/>
						</StackPanel>
					</Border>
				</DataTemplate>
			</Setter.Value>
		</Setter>
		<Setter Property="ErrorStyle">
			<Setter.Value>
				<Style TargetType="ListBoxItem">
					<Setter Property="Template">
						<Setter.Value>
							<ControlTemplate TargetType="ListBoxItem">
								<Grid Background="{TemplateBinding Background}">
									<vsm:VisualStateManager.VisualStateGroups>
										<vsm:VisualStateGroup x:Name="CommonStates">
											<vsm:VisualState x:Name="Normal"/>
											<vsm:VisualState x:Name="MouseOver">
												<Storyboard>
													<DoubleAnimation Storyboard.TargetName="FillColor" Storyboard.TargetProperty="Opacity" Duration="0" To=".35"/>
												</Storyboard>
											</vsm:VisualState>
											<vsm:VisualState x:Name="Disabled">
												<Storyboard>
													<DoubleAnimation Storyboard.TargetName="ContentPresenter" Storyboard.TargetProperty="Opacity" Duration="0" To=".55" />
												</Storyboard>
											</vsm:VisualState>
										</vsm:VisualStateGroup>
										<vsm:VisualStateGroup x:Name="SelectionStates">
											<vsm:VisualState x:Name="Unselected"/>
											<vsm:VisualState x:Name="Selected">
												<Storyboard>
													<DoubleAnimation Storyboard.TargetName="FillColor2" Storyboard.TargetProperty="Opacity" Duration="0" To=".75"/>
												</Storyboard>
											</vsm:VisualState>
										</vsm:VisualStateGroup>
										<vsm:VisualStateGroup x:Name="FocusStates">
											<vsm:VisualState x:Name="Focused">
												<Storyboard>
													<ObjectAnimationUsingKeyFrames Storyboard.TargetName="FocusVisualElement" Storyboard.TargetProperty="Visibility" Duration="0">
														<DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
													</ObjectAnimationUsingKeyFrames>
												</Storyboard>
											</vsm:VisualState>
											<vsm:VisualState x:Name="Unfocused"/>
										</vsm:VisualStateGroup>
									</vsm:VisualStateManager.VisualStateGroups>
									<Rectangle x:Name="FillColor" Opacity="0" Fill="#59F7D8DB" IsHitTestVisible="False" RadiusX="1" RadiusY="1"/>
									<Rectangle x:Name="FillColor2" Opacity="0" Fill="#FFF7D8DB" IsHitTestVisible="False" RadiusX="1" RadiusY="1"/>
									<ContentPresenter x:Name="ContentPresenter" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" HorizontalAlignment="Left" Margin="{TemplateBinding Padding}"/>
									<Rectangle x:Name="FocusVisualElement" Stroke="#FFF7D8DB" StrokeThickness="1" Visibility="Collapsed" RadiusX="1" RadiusY="1" />
								</Grid>
							</ControlTemplate>
						</Setter.Value>
					</Setter>
				</Style>
			</Setter.Value>
		</Setter>
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="ctl:ValidationSummary">
					<Grid x:Name="ValidationSummary">
						<vsm:VisualStateManager.VisualStateGroups>
							<vsm:VisualStateGroup x:Name="CommonStates">
								<vsm:VisualState x:Name="Normal"/>
								<vsm:VisualState x:Name="Disabled">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetName="DisabledVisual" Storyboard.TargetProperty="Visibility" Duration="0">
											<DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</vsm:VisualState>
							</vsm:VisualStateGroup>
							<vsm:VisualStateGroup x:Name="ValidationStates">
								<vsm:VisualState x:Name="Empty">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content" Storyboard.TargetProperty="Visibility" Duration="0">
											<DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</vsm:VisualState>
								<vsm:VisualState x:Name="HasErrors"/>
							</vsm:VisualStateGroup>
						</vsm:VisualStateManager.VisualStateGroups>
						<Border x:Name="Content" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="0,0,2,2">
							<Grid>
								<Grid.RowDefinitions>
									<RowDefinition Height="Auto"/>
									<RowDefinition Height="*"/>
								</Grid.RowDefinitions>
								<ListBox x:Name="SummaryListBox" Grid.Row="1" Background="{x:Null}" BorderThickness="0" Height="Auto" ItemContainerStyle="{TemplateBinding ErrorStyle}" Style="{TemplateBinding SummaryListBoxStyle}" Padding="{TemplateBinding Padding}" Foreground="{TemplateBinding Foreground}">
									<ListBox.ItemTemplate>
										<DataTemplate>
											<StackPanel Orientation="Horizontal">
												<TextBlock Text="{Binding MessageHeader}" FontWeight="Bold" Margin="4,0,0,0"/>
												<TextBlock Text="{Binding Message}" Margin="4,0,0,0"/>
											</StackPanel>
										</DataTemplate>
									</ListBox.ItemTemplate>
								</ListBox>
								<Border x:Name="DisabledVisual" Visibility="Collapsed" Background="#80FFFFFF" Grid.RowSpan="2" IsHitTestVisible="True"/>
								<ContentControl x:Name="HeaderContentControl" ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" IsTabStop="False" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Center"/>
							</Grid>
						</Border>
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>

	<!--Label-->
	<Style TargetType="ctl:Label">
		<Setter Property="IsTabStop" Value="False"/>
		<Setter Property="HorizontalContentAlignment" Value="Left"/>
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="ctl:Label">
					<Grid>
						<vsm:VisualStateManager.VisualStateGroups>
							<vsm:VisualStateGroup x:Name="CommonStates">
								<vsm:VisualState x:Name="Normal"/>
								<vsm:VisualState x:Name="Disabled"/>
							</vsm:VisualStateGroup>
							<vsm:VisualStateGroup x:Name="ValidationStates">
								<vsm:VisualState x:Name="Valid"/>
								<vsm:VisualState x:Name="Invalid">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentControl" Storyboard.TargetProperty="Foreground" Duration="0:0:1.5">
											<DiscreteObjectKeyFrame KeyTime="0">
												<DiscreteObjectKeyFrame.Value>
													<SolidColorBrush Color="Red" />
												</DiscreteObjectKeyFrame.Value>
											</DiscreteObjectKeyFrame>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</vsm:VisualState>
							</vsm:VisualStateGroup>
							<vsm:VisualStateGroup x:Name="RequiredStates">
								<vsm:VisualState x:Name="NotRequired"/>
								<vsm:VisualState x:Name="Required">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentControl" Storyboard.TargetProperty="FontWeight" Duration="0">
											<DiscreteObjectKeyFrame KeyTime="0" Value="SemiBold"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</vsm:VisualState>
							</vsm:VisualStateGroup>
						</vsm:VisualStateManager.VisualStateGroups>
						<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}" CornerRadius="2">
							<ContentControl x:Name="ContentControl" Foreground="{TemplateBinding Foreground}" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" FontWeight="{TemplateBinding FontWeight}" Cursor="{TemplateBinding Cursor}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" FontFamily="{TemplateBinding FontFamily}" FontSize="{TemplateBinding FontSize}" FontStretch="{TemplateBinding FontStretch}" VerticalAlignment="{TemplateBinding VerticalAlignment}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" IsTabStop="False" />
						</Border>
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>

	<!--DescriptionViewer-->
	<Style TargetType="ctl:DescriptionViewer">
		<Setter Property="IsTabStop" Value="False"/>
		<Setter Property="GlyphTemplate">
			<Setter.Value>
				<ControlTemplate TargetType="Button">
					<Grid Width="15" Height="15">
						<vsm:VisualStateManager.VisualStateGroups>
							<vsm:VisualStateGroup x:Name="CommonStates">
								<vsm:VisualState x:Name="Normal"/>
								<vsm:VisualState x:Name="MouseOver">
									<Storyboard>
										<DoubleAnimation Storyboard.TargetName="Icon" Storyboard.TargetProperty="Opacity" To="1" Duration="0"/>
									</Storyboard>
								</vsm:VisualState>
								<vsm:VisualState x:Name="Pressed">
									<Storyboard>
										<DoubleAnimation Storyboard.TargetName="Icon" Storyboard.TargetProperty="Opacity" To="1" Duration="0"/>
									</Storyboard>
								</vsm:VisualState>
								<vsm:VisualState x:Name="Disabled"/>
							</vsm:VisualStateGroup>
						</vsm:VisualStateManager.VisualStateGroups>
						<Grid x:Name="Icon" Opacity="0.6" Width="13" Height="13" HorizontalAlignment="Center" VerticalAlignment="Center">
							<Ellipse>
								<Ellipse.Stroke>
									<LinearGradientBrush EndPoint="0.298,0.3" StartPoint="0.505,0.65">
										<GradientStop Color="#FF485E6F"/>
										<GradientStop Color="#4C485E6F" Offset="1"/>
									</LinearGradientBrush>
								</Ellipse.Stroke>
								<Ellipse.Fill>
									<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
										<GradientStop Color="#FFCED4D9" Offset="1"/>
										<GradientStop Color="#FFFDFDFD" Offset="0"/>
									</LinearGradientBrush>
								</Ellipse.Fill>
							</Ellipse>
							<StackPanel Height="Auto" Width="3" HorizontalAlignment="Center" VerticalAlignment="Center">
								<Path Height="9" HorizontalAlignment="Center" Margin="0,0,0,1" VerticalAlignment="Top" Width="3" Data="M0.5,0.60000002 C0.5,0.54477155 0.54477155,0.5 0.60000002,0.5 L2.4000001,0.5 C2.4552286,0.5 2.5,0.54477155 2.5,0.60000002 L2.5,1.6215254 C2.5,1.6767539 2.4552286,1.7215254 2.4000001,1.7215254 L0.60000002,1.7215254 C0.54477155,1.7215254 0.5,1.6767539 0.5,1.6215254 z M0.50000548,3.3151906 C0.50000548,3.2599623 0.54477704,3.2151906 0.60000551,3.2151906 L2.4000056,3.2151906 C2.4552341,3.2151906 2.5000055,3.2599623 2.5000055,3.3151906 L2.5000055,8.4000092 C2.5000055,8.4552374 2.4552341,8.5000095 2.4000056,8.5000095 L0.60000551,8.5000095 C0.54477704,8.5000095 0.50000548,8.4552374 0.50000548,8.4000092 z" Stretch="Fill" Stroke="#00000000">
									<Path.Fill>
										<LinearGradientBrush EndPoint="0.39,0.297" StartPoint="0.413,0.653">
											<GradientStop Color="#FF485E6F"/>
											<GradientStop Color="#4C485E6F" Offset="0.781"/>
											<GradientStop Color="#FF485E6F" Offset="0.982"/>
										</LinearGradientBrush>
									</Path.Fill>
								</Path>
							</StackPanel>
						</Grid>
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
		<Setter Property="ToolTipStyle">
			<Setter.Value>
				<Style TargetType="ToolTip">
					<Setter Property="Placement" Value="Right"/>
					<Setter Property="IsHitTestVisible" Value="True"/>
					<Setter Property="MaxWidth" Value="250"/>
					<Setter Property="Margin" Value="5,-3,5,0"/>
					<Setter Property="ContentTemplate">
						<Setter.Value>
							<DataTemplate>
								<TextBlock TextWrapping="Wrap" Text="{Binding}" />
							</DataTemplate>
						</Setter.Value>
					</Setter>
				</Style>
			</Setter.Value>
		</Setter>
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="ctl:DescriptionViewer">
					<StackPanel Orientation="Horizontal">
						<vsm:VisualStateManager.VisualStateGroups>
							<vsm:VisualStateGroup x:Name="DescriptionStates">
								<vsm:VisualState x:Name="NoDescription"/>
								<vsm:VisualState x:Name="HasDescription">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetName="DescriptionContent" Storyboard.TargetProperty="Visibility" Duration="0">
											<DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</vsm:VisualState>
							</vsm:VisualStateGroup>
						</vsm:VisualStateManager.VisualStateGroups>
						<Border Background="{TemplateBinding Background}" Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
							<Button x:Name="DescriptionContent" Visibility="Collapsed" IsTabStop="False" Template="{TemplateBinding GlyphTemplate}" Background="#00000000" BorderBrush="#FFFFFFFF" BorderThickness="1" Padding="1"  HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
								<ToolTipService.ToolTip>
									<ToolTip Style="{TemplateBinding ToolTipStyle}" PlacementTarget="{Binding RelativeSource={RelativeSource TemplatedParent}}" Content="{TemplateBinding Description}"/>
								</ToolTipService.ToolTip>
							</Button>
						</Border>
					</StackPanel>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
</ResourceDictionary>
o����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADPQ:������� �/X�5\u�z�=8UnderlyingPropertyIsReadOnly8ValidationSummaryHeaderErrorA:ValidationSummaryHeaderErrorsJ*ValidationSummaryItemV8ValidationSummarySampleError`?{0} cannot be set because the underlying property is read only.1 Error
{0} Errors{0}: {1}Sample Error�� �_CorDllMainmscoree.dll�% @�0�HX�d4VS_VERSION_INFO������?DVarFileInfo$Translation��StringFileInfo�000004b0X CommentsSilverlight Data Input ControlsLCompanyNameMicrosoft Corporationp#FileDescriptionSystem.Windows.Controls.Data.Input@FileVersion5.0.611181235p'InternalNameSystem.Windows.Controls.Data.Input.dll�.LegalCopyright� Microsoft Corporation. All rights reserved.x'OriginalFilenameSystem.Windows.Controls.Data.Input.dllPProductNameMicrosoft� SilverlightDProductVersion5.0.6111812358Assembly Version5.0.5.0FE2X�0<�0�s	*�H��
��d0�`10	+0h
+�7�Z0X03
+�70%� ��<<<Obsolete>>>0!0	+H�׸��ݬ"���ާ8=wj��10�`0�L�
.��P�\��0	+0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority0
070822223102Z
120825070000Z0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Code Signing PCA0�"0
	*�H��
�0�
��y}�]�E9�4�1�%5Iw����Eq��F�Ԍ�kLRb��M�Il/$>e��#�H�u�E���P�%+��
#�A$�b��E��J�ͳ/"�J-|o�;�99ݽ)�f;-2��'H��l�����c��\������򸔣�8�P�'�N�0�=��=����l9�.4��.�
}b�xf��s
����� �O�c�,�2E�J�;PS�fQy����V>��P�n�5�{$�Rf=�N�+~3n�Gў�J�n�����S���0��0U%0
+0��U��0���[�p�ir�#Q~�M��ˡr0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority���<<��>�c��@0U�0�0U��vp[����N�QD.�Dc�0U�0	+�{��~J&�μNt�X't*u����L�xM����i��|�C�ʇ�S�Ÿ�Vo�cD�D�Ț���
����)}��s���9�=�j�8m҈�#����i	������4�|�.�)��Bk(q�8��
�]hͽ�Akf�����4��|z���B�{������
�p֒�O�8�|-�=�4b7��j#��\c��Z�9�`�U�3�;����_��,���˫� ��0� 
*�R�A�^0�(i��p��΀Brv0�z0�b�
a��0
	*�H��
0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Code Signing PCA0
110221205312Z
120521205312Z0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1
0UMOPR10UMicrosoft Corporation0�"0
	*�H��
�0�
��qt�ۜ/��c�����p��G*��Z��M�;�!��}|?��v%:ܠO �r�Cq�l����%���]�7�.ū�`q��'�3��֓�U˃����ca�����Fc7�<W�H S��X���ʶFl
�:Φ��ݪ�p�[���?�٤��n����:��J�,��Av	�lg �1�>k�@��p0�0羌�/�Ԇ?Z��h��|�JnYC H����E��Lb΢��%�б��${�|�\N�g����0��0U%0
+0U�r��b_ݣt�_�A�[C&0U��0U#0���vp[����N�QD.�Dc�0DU=0;09�7�5�3http://crl.microsoft.com/pki/crl/products/CSPCA.crl0H+<0:08+0�,http://www.microsoft.com/pki/certs/CSPCA.crt0
	*�H��
�``'�|0IGA7<^u��6H�,X��|�������m��0�!cAF�ׯ(K�6}@T`�b��i�_Ň��|��Y}ۈ�wx�$�d�NQ�D(�,T(r�=,�'oѥa��b:�N/�g}�cC?;��z�x@��x· ���`�R\v�x�cuk���F��YR�{������,~0�1K��Z��x��~`�
�1�r�>g�8�8�9s�;�4߃Ҝ����d_��.�2%vi%�Ս5#��%D0��0���j�O�%��EXzg�0
	*�H��
0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority0
060916010447Z
190915070000Z0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Timestamping PCA0�"0
	*�H��
�0�
��7n���BJq��H>S����,2�ORȃ�>3�I1�(��d�P���K���u��Ǩծipfx'f趷���Y")/�@�Vv�mdmJT���޿��ǀ�L7����VhG��v\/}�%�V[jc��|<��%M9wt]�\؆7,u��9	|v��lnz��>���q_*Ob`2�҃N+"\hE��/�P����l�%���ׅ�vs6ƕz��`���3���[�A�X��n�,H�o�C�j�&�k��(0�$0U%0
+0��U��0���[�p�ir�#Q~�M��ˡr0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority���<<��>�c��@0	+�70Uo�N?��4�K�����;AC��0	+�7
SubCA0U�0U�0�0
	*�H��
��M1�|P���a�pE��sT�?	-��QS��9���Vތ�;���ɷ�Q!oi~k�"F�l�m|"�Fӄ���6��~�p]E�����ݎ��*�|�ɮ2Շ��c�6�!�v�;��s�!�ش�T���eJ�(&�`�;�exH�ϭ�:O�bX�0��9���9��!�d�c��C/{F����e�J��t��n̝�(a|H��!8��Ŗ2��@�S=�����f7��"��̰wTQ:�rD�#�0��0���
a�00
	*�H��
0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Timestamping PCA0
080725190115Z
130725191115Z0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1
0UMOPR1'0%UnCipher DSE ESN:85D3-305C-5BCF1%0#UMicrosoft Time-Stamp Service0�"0
	*�H��
�0�
��-����g%�&b�K�0��8��e4�6�$h�����{b,F�K�Q4��l�Z;���G=.5kE��<�f�i�J�',�<w[��p�KW�Я-����)��Ϟb�rT�;��?��Xl����u7����(����������=���2Ƞd��&qS��'vI�q��2x��lO"e�bMF/�#���p����2�+�@���,�l��2}��~�/2�f��EU���-g�g)���Z�#���0��0U�����i�YhN���zݛ.0U#0�o�N?��4�K�����;AC��0DU=0;09�7�5�3http://crl.microsoft.com/pki/crl/products/tspca.crl0H+<0:08+0�,http://www.microsoft.com/pki/certs/tspca.crt0U%0
+0U��0
	*�H��
�
?w_�<��5���V���/��?qՆ|w����|��
EH��i,�>gbT��'�9��هN��`G#{'@��
1��5��Ӌ�xaŵ�A�>6�X�'�:ڽ]��L��<��b��f���(�2��1	��"hFL��s"�)�"�V�����4�(�Jb����G�
��X;�k	i��H|U�?_8C��?�/�Os	=��^���7�da�M�=p�[���ԣ1�d֖�z?*[FS	<��?ỶSa1��0��0��0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Code Signing PCA
a��0	+���0	*�H��
	1
+�70
+�710
+�70#	*�H��
	1�s�����`�r�8��0x
+�71j0h�N�LSystem.Windows.Controls.Data.Input.dll��http://microsoft.com0
	*�H��
�M�#tӯ�c�Y��I�J(��
��1��$sn�O�vr����\֏E"\��2��JF�c�����A��:*�`�.Y�v�7���q�	�R@�@�,����6	On�I^��s�d`�{J�F�e�'Tղ)���#��u/��R�(��B��G��2��P�꣒����{�C(jr(9Rs�崲.���7�刽юƎ�1n��)ʌ�%W|ts�\}���>�9~&*N��|���L�Y��s�����H���0�	*�H��
	1�0�0��0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Timestamping PCA
a�00+�]0	*�H��
	1	*�H��
0	*�H��
	1
111118220006Z0#	*�H��
	1x�����o=����'�d�0
	*�H��
���d��B�N�� ���*s��\R�L{:#��D��� G��|����j�-������_o������^>�o:��<���C�o��J�m�_zX�/��!��I5�[mQrr:9�_&z�Rh �B�n���$�7�l��n�B��`�JyZp�8��=�q+��F�7g`e
��y���*�u�|!FW
1����5��&f�j�p=�?���Ű~/v�-�\K~�E"q7��f4��kG��]��b)D�ƞPKc�Bω�I`I`I$System.Xml.XPath.dll
 MO:�b�MO:�b�MO:�b�MZ����@���	�!�L�!This program cannot be run in DOS mode.

$fPEL���N�!(~F `�a �_N@� 0FK`P2`��E  H.text�& ( `.rsrcP`*@@.reloc�0@B`FH�D	0��P �R���}�0�j��'�'5��ݾ���n�"�¼K`��Ӡ�,9H��j�tڃ���"���h�S��j���N蕷�kI��¥��t��8%��g(�@?I��Cw���0�%m����O�Z��M�`R�1�"("
*�{M-}M(#
(
($
(#
*"(%
*(
*�(&
rp('
o(
s)
}m*0 ~l-s
l(+&~l*
*.({m*0u(
-*{m(o+
,S�i1M+6�uL
	,&	o,
 1	 �o-
r#p(.
�X�i2�(/
(0
**0(
-*{m(o+
**R(
*0(
-*{m(o1
**(&
*o*
*s3
zo*0t-*o.o
o6,!o*o-,oo6&*o,
-~4
*r+p(5
,r3p*r}p(5
,r�p**0�-*o
o.o6,/o*o.,o(5
,o*o/-�~4
o(5
,~4
*r3p(5
,r+p*r�p(5
,r}p**0�o
.3.3oo6,o*s6
-r+pr3po7
o.,=o
o	o,
-
o,
-3		o7
o/-�o6&*~�*0.o
r�pr3po),o*o6-�~4
*0,o
Er�p(
s8
z(�*^-r�ps9
z(�*
*No*-*o6&*0 o)-r�p*o
o6&*�o*,-o(5
,o(5
,*o+-�o6&*0Eo--,r+p(5
,r3p*r}p(5
,r�p*~4
*o
o6&*�o., o(5
,*o/-�o6&*"o.*"o/*0,o
YE+*o6-*o5*&o6-�*0@o5,6o3o(5
,o(5
,*o2-�o6&*01o5,'(�
o_b_,*o2-�o6&**o=*0�	o
,(oYE+oo|&oYE+
o6-*o5-o2-o6-�o8&*,oC,
o8&*o3�o(:
-�o(:
-�*&o?*0�
o
(�,(oYE+oo|&o
	YE+
o6-*o5-o2-o6-�o8&*,oC,
o8&*o_b_,�*0Bo
+'o3o(5
,o(5
,*o2-�o8&*03o
(�+o_b_,*o2-�o8&*No5,	o6&**�,o+oC,*o6-�*0�-*oC,*o
oo(�o(�
	1+o6&Y	0�oC,*	1+o6&	Y
	0�oC,*ooo6,	o6-*oC,o'
o;
r�p(:
&(�*o6&o6&+�(�*6(�oI*:(�oI*0
oL
o�,o�**6(�oL*:(�oL*0
oOu
-r]p(�z*:(�oP*:(�oO*&oP*0WuQ
-r�p(�zow(Go9-osHoAu,
o�sq**0EuQ
-r�p(�zow(GoC���&r�po�(�z*!16(oQ*6os*:os*:os*>os*:os*>os*
*s3
zs3
zs3
zs3
zs3
zs3
z0(�
oa*0G-r�ps9
zo
,.3r�p(
s8
zo_(�o<
*0-r�ps9
zo�
oa*0�o3or�por�p(=
*o3[oo,
-r�por�p(>
*�L
	r�p�	o�	r�p�	o�	r�p�	(?
*(@
sA

sB
oC
oD
oE
(F
(��o<
�o;
*�
�"o`*0�o
	E__+d(@
sA

sB
oC
oD
oE
(F
o5,(�o2-�o6&�o<
�o;
*o*~4
*M!n0i-rps9
zoE)+/o
+oto5-�o,
, og*o*r�p(
s8
z*0(�
oh*0$-rps9
zo[
(�o<
*0;-rps9
zo(�-r�p(
s8
zo�
oh*0(�
ok*0$-rps9
zoZ
(�o<
*0;-rps9
zo(�-r�p(
s8
zo�
ok*0(�
on*0$-r!ps9
zo]
(�o<
*0;-r!ps9
zo(�-r�p(
s8
zo�
on*0(�
oq*0$-r!ps9
zo\
(�o<
*0;-r!ps9
zo(�-r�p(
s8
zo�
oq*s3
z"os*0)oZ
oG
,oH
oI
o<
*0)o[
oG
,oH
oI
o<
*0)o]
oG
,oH
oI
o<
*0)o\
oG
,oH
oI
o<
*0)o^
oJ
,oH
oK
o<
*0Qo
-+ooL
+"o3o3o(5
,*o3-�o8&*03o
(�+o_b_,*o3-�o8&*0do-*o2,*o
o6-*oYE+o5,*o6-
o8&*o2,�*0Lo
oYE+ Xo+-�+Xo1-�+Xo2-�*0yo
sM
~�o�oN
&o}o6,C5~��oN
&+�0oN
&~�_�oN
&d-�0oN
&+�o;
*0s�(�sv*0
+X
o6-�*0�
oYE+X
+X
oYE+8-Q+oC,*o1-�+:Y
-3+oC,*o+-�+Y
-+oC,*o2-�2**0`sO
sP

o
oQ

+.	oR
(S
r}p(:
,(S
(T
oU
	oV
-��
	,	oW
�*:T
"~��*f	3 ���*3p*_b**Y��*0uo
E0+\YE222+0*YE+**0ao
YE00+.YE+**(�*0�-r+ps9
zo
osP
-o6&o.,oooU
o/-�osX
sY

	oZ
	o[
s\
	(]
*02r�p
o^
,.r7p(
raps_
z-
o`
-*Xoa
E��������������8�ob
oc
od
oG
oe

+sod
3@ob
o,
-r�pr}pof
og
+Dr}poc
of
og
+*ob
oc
od
oJ
of
oH
oK
oh
-�oi
&	,oI
8�X8�oj
Y8�of
oH
8�of
oH
8�of
ok
8�oc
of
ol
+{om
+sod
3@ob
o,
-r�pr}pof
og
+Dr}poc
of
og
+*ob
oc
od
oJ
of
oH
oK
o`
,=
���*2s��
*REANTSWPCXABCDEFGHIJKLMNOPQRSTUVWXYZ123456p @��0Ps���
�]%�;(o
�� �]%�<(o
��
�b%�=(o
��*(*"}�*0J{�o�o;

{�oYE>>���>�8��
	�	rop�	{�o�	"�]�	(q

8���rop�{�o�"�]�(q

��r�p�{�o(��"�]�(q

+A�		�	r�p�	{�o(��	"�]�	(q

*0P o
oo/,(�o,
-~4
r}pr�pog
*r}pr�pog
*0d!-r�ps9
z
oo
	E	���y����8�o oooG
o*,9o oooJ
ooH
oK
o+-�o6&o.,(�o6&+@ooH
+2oor
+$+ ook
+oool
,0o5,	X
8����o3o",oI
+oj
-*o2:���Y
o6&o3�oj
+�6~4
(�*&(�*0"r�p�L
�(�*"s�*0"�L
�s�*0"�L
��s�*0"�L
�s�**(�*�(�(s
 C�(t
}�}�*06 (	
-r�pr�p(>

�&r�pr�p(>
�*  eZ{�,{�*(u
*0+
{�3o�
o�-�o�}�{�*s�*no�,o�s��
**:}�(&
*N(&
o�}�*0a#{�,9{�- r�p�
~4
�(	s8
z{�o�o*rp�~4
�(	s8
z0@{�-{�o�}�}�{�,
{�o�-	}�**"}�*"}�*0�$sM

r+pov
&{�o�ow
&r?pov
&{�o�-rUpov
&+7{oN
&{�o�s��
o;
ov
&}oN
&o;
*(&
*"(�*0#%s�(�sv,o�*JtQ(woP*0!&u
u,,oC,**0g'-r_ps9
zu%,Fo&,	ox

+:o
oox
a
o ox
a
oox
a
+ox

*(&
*"~��*2{�o&*0(o
us�*0D(y
}�}�(�}�}�}�{�o(�}�*V{�1
{��**2{�o*6{�o*6{�o*6{�o*0")sY

oz
o{
oZ
o|
*{�*�{�o3oz
r�po}
*oa
3~4
*{�o*0L{�o3#{�oo,
-oz
r}po}
*oa
3~4
*{�o*0L{�o3#{�oo,
,oz
r}po}
*oa
3~4
*{�o *�{�-{�o!*{�o!*2{�o"*0^{�o
rgpr3po),6o(�%, rsp(5
-r�p(5
-+**o6&o6-�*2{�o#*�{�.{�	.{�.
{�,**�{�.({�	.{�.{�,{�o*~4
*0e*{�YE@$+>{�o*{�o
o6,*{�}�(�}�**0�+
{�YE|!@_+z{�3{�o
{�T+c{�o
o6&{�YT+D{�o
o6&{�YT+%{�}�(�
}�+{�T*�{�o8&}�}�}�*0T{�/D(�
,1o.,Xo/-�o6&o*,Xo+-�}�{�*0�,{�
o
	YE+o
o6-**(o,
->r}p(5
,~4
o,*{�3o
~4
o),_o*r}p(5
,o,*{�3o
o*,+o(5
,o (5
,o*o+-�*0�-r�ps9
z{�
oYE+o
o6-**r�p(5
,r}p(5
,~4
o,*-~4
{�3o
o),o**0/ o
o/,(�+TJ3%JXT*0\-2M(�
,Co.,(�,*Yo6&o*,-o*Yo+-�r�ps~
z0�.-r�ps9
z{�
(�,Wr�p(5
,6r}p(5
,~4
o.,-o(5
-!o/-�+-~4
o)-*X(�*06.(�,o.,o/-�+
o*-*X(�*0*{�YE��8�o
*{�o3{�o+*{�o
o6-*o.-*{�oC, o6&o*-*{�o8&*oo/-*{�oC,{�o8&*o8&+�%{�Y}�}�oh
-%{�X}�}�*}�**0�/(�-*(o,
-
	r}p(5
+%-
r}p(5
,,,~4

o.,]o	(5
-Qo/-�+Do,
-	~4
o),.+.o*,$o	(5
,o (5
-
o+-�*X(�*0_0{�
YE+D{�o6-*%{�Y}�{�3%{�Y}�}�}�***{��*090{�
E+*****Br7p(
s8
z�{�3}�}�%{�X}�**
*s3
zs3
zs3
zs3
z6{�o*{�*0�0}�{�
E	u�``�8�*{�}�}�{�o-{�o5-(�*}�+{�o3}�{�o(�}�8C{�o5,0{�o(�}�%{�X}�}�8{�3!{�o"-}�}�8�{�-{�-(�*{�o2,"{�o(�}�}�8�{�1,{�o6,}�}�%{�Y}�+`(�*{�o6-(�*{�o(�}�%{�Y}�{�@���%{�Y}�8����*�(�}�}�}�}�*�(�}�}�}�}�*061
�
	������
�����*(�*v�~�-s�����~�*	*~4
*~4
*~4
*~4
*~4
*~4
*
*~4
*
*
*sO
*
**
*
*
*
*
*
*
*
*
*
*
*
*
*�*".**�*
*(&
*r}�(�}�}�*B(
}�*�(
-r�ps9
z-r�ps9
z}�}�*0g}�(�{�o}�{�}�{�}�{�}�{�}�{�}�{�}�*{�*{�*0�{�-I{�{�o.4{�	.*{�3{�o.{�o�****{�o3<{�o,
,{�{�o(5
,{�{�o(5
***(*.(*"(*s*0E+}�o,%{�X}�*{�-
{�o2+{�o5-�**(*2(*"(*0O{�,8}�{�,)o,!}�*o,%{�X}�*{�o6-�*s**(*2(*R({�}�*s *0�{�, }�{�,o,	}�*{�o5,%{�X}�+3{�-*{�o2-{�o6&%{�Y}�+�o,�%{�X}�*j(}�s�
}�*�(}�}�}�s�
}�*:(}�*�(}�s�
}�{�o�
*
*6~�{��*{�*{�*{�*{�*0h2�
������
���
������������*"~�*r(}}}*
*f{0*{
0**{*{*{*0'3	�'
�������*:(�}�*N(�{�}�*"}�*0#o9o�
+o�-*X
2�*(6*"(7*6oB��*0A4{�31o�t)
o9}�+%{�X}�o�-�{�**.r�p(�z*#�?**F,o�t)**2,o�**2,o**0�5
o�
,pYo�
(L
	E+*oo�
*Y+6(Ko�
(LE
+*X
+2�oo�
*Xd*0Z6oE
3Loo7o!o8-oo7o!
	(�
20++
*0\o'
o;
r�p(5
,*o'
o;
r�p(5
,*/Yo�
(L&o�
/o�
(L&*0�7uP,*(G
o�o�&+Xo'
o;
r�p(5
,*o'
o;
r�p(5
,*,o3	o.(L&o
XoB%-�*�u,*uL,*uh,*ui,**^('
o�
~4
o�
*�(<~4
}.~4
}/~4
}0},*0L(<},}.}/}1o,
-o,
��+}-~4
}0*0m(={,(G},{.}.{/}/{0}0{1}1{-}-{3}3{2}2*j}3}2{,o9*~{/o�
}0{,o@*{.*{/*{0*{-*{1*{3*{2*0t(Zo.%(Z	.(Z3Qo.	o3?(Y,5{.oo�
-
{.o,
-{0oo�
,***n(8o9{,oA&*0Y{,o'
�;(�
.
#�?*{.o,
,
#*{/o,
,
#п*#�*
*0�('
o�
o�
(Y,8r�p(Wo,
-(V+(W:�](V(�
o�
(Z.r%p(Z�o;
o�
{,oPoI
*z(Rs�
}4}�*�(S{4s�
}4{�}�*"}�*V(^&{4o�
*02{�{4o�
/{4%{�%
X}�o�
**z{�-*{4{�Yo�
*{�*2{4o�
**2(b*"(c*09o
o6&+o�
oC,*Xo�
2�o�
*0�8(e&s�

s�
+{2oo�
{,oB%}2-�+co�
o.So.J(m,@o
	o6,1	o5&+	o],{4	(J&	o2,		oC,�o�
-�*sl*&(j`*j(6o}<}=*�(6{<o}<{=o�t)}={>}>*2{=o9*0;{=oB
,*%{>X}>{<o8-o}<**2{=o�*{<*{>*sr*:(6}?*~(6{?}?{@}@*�(6s�
}?+{?o�oo�
o�-�*{?*sz*0=9{@/ rp�
~4
�(	s8
z{?{@Yo�
*{@*2{?o�
*�{@{?o�
3*%{@X}@*"}@*2{?o�
*r{@2o�s��
**�(<s�
}As�}B}C}�*0B(={As�
}A{Bo�}B{C(G}C}�*"}�*�{Co@{CoE.{CoE.r]p(�z*0}:{Bo�
+N{Ao�
os�
+"	{B	o�{CoAo�	X
	2�{Ao�
{CoB%-�{A{Bo�
*�{CoA&{Ao�
(�}�*07{�{Ao�
/"{A%{�%
X}�o�
o�**�{�-*{A{�Yo�
o�*:{Bo�*s�*
*{�*2{Ao�
*
*�('
o�
o�
{CoPr7pr[po�
oI
*�(&
}D�}E}F}G*&{E�**{E�*{D*{F*{G*�(&
0�)}I�}J*"(�*0�;{K{I�i3Q{KZ�)
{KZ�+{I��{J��X{K2�}I}JoE.	oE3�)
	�	s�{I{K�{J{K�%{KX}K*{K*&{I�*0B<
+%{J�o�o�o�

,*Xo�2�o�o�Y*0U={Ks�
+.{J{J��{I{I�o�t)�X{K2�{K}K*V(}L}M*
*
*{L*{M*V(}N}O*
*
*{N*{O*�(Rs�
}Ps�
}Q*�(S{Po�
}P{Qs�
}Q{R(I}R*�{Po�
{Qo�
}R(T*0Ho
o6&+{Qo�
oC,*X{Qo�
2�{Qo�
*0!{,oB
-*(�-�o*0�{2:�{R-(�}R{Po�
-${R-*{R}2(�}R+Z{Po�
}2+G{P{2o�
{R}2{,oB}R{R,{Ro}R{2{RoD-�+#{2o],%{3X}3{2*{2o2-�}28���s�*�~4
}Y(}S}T}U}V}W*r~4
~4
	(�}X*
*
*{T*"}T*{U*{V*{W*{S*{X*{Y*"}Y*"}m*0�>
o�o,
1}m}no�9�_:�o�u6
	,vo�3m	o�3d	o�	3Z	o�,	o�(�+
s�To�o�o�	o�s�
J_,s
%J`T*o�.	o�3`o�(�+	s�To�E
*�O���-�c�8to�o�o�s�
%J`T8`o�o�o�s�
%J`T8;J_,o�o�o�s1
8o�o�o�s�
8�o�o�o�s
8�_,o�o�o�s
+(o�o�o�s�
J_,s
%J`T8�_,"o�o�o�o�s
+-o�o�o�o�s�
J_,s
%J`T8'o�o�o�s-
%J`T8o�o�o�s3
%J`T8�o�o�o�s�
J_9�s
8�o�o�o�sk
8�o�o�o�s�
+xo�o�o�s�
+]o�	.o�.	o�3(o�o,
-o�o�o�s+
+sA
+r�p{i(�z*VoE.
oE�**0�?_�
o�(�(�-_,	``�_o�`(�
o�o
.%J�_T_,%J`T	uG,I_-Do#oE.5o#oE-ssPs{,
J_,	uB,	tB{�
{n-	u*}n	oF_��	oF_��_,,		s�
+_,	s�
,a{n,Y,NJ_,H	s 
{n{,u;- {ns�},}n	s8*}n	*}n	_�s *0�@o3(�o4(�
`To2YE,+8o2	sF*o2	sP*o2	s*%J`T	sN**�}m{j-r�p{i(�zo�o�sg*0xAT
o)E/Ovvv�(�(���������(����M8�o)s
%J`T*o)s
%J`T*o*o�
t(�s*o*o�
t(�s
%J`T*o*,3o*o�
1%o)o*o�
t(�s*o)s*o)o*(�s�*o*,3o*o�
1%o)o*o�
t(�s�*	s�*o)s�*o)o*o�
t(�s�*}m{l-*o,r�p(5
,o+o,
-r�p(�z{k-0o,r'p(5
,o+o,
-r�p{i(�zo+o,o*(�sn
%J`T*r�p{i(�z0FB-+o�

s�
T+%o�
t(�o�
%J	`TX2�*0�C
To
E&7Yi�J8�t6(�
+tt&(�
+dt3(�
+StVo�s�
+@t4(�
+1t$(�
+!tKoE(�s
+s�
*0D(�}i(�*�}j}k}l(�(�*04(�
{mR*�}j}k}l(�(�*04(�
{mR*(&
*:(<}�*R(={z}z*"}�*{z*Vo�}z}�*b{�-}�{z**
*s�*
*{�*
**2(R*R(S{{}{*:}{(T*0�{{-F{,oB}2{2-*}3{2o}2{2o*}{+{2o+}{{{,�{2o],�%{3X}3{2*03,.o3%o],o
o6,
{,oC**s�*^~�}|(R*�~�}|(S{|(H}|*J~�}|(T*0�+t{,oB
-*(Y,B(Z3(ZoS(Vs�}|+,(V(XoT}|+(ZoS}|}3{|o�9|���%{3X}3{|o�}2{2*05,0o],'o
o.o6,
{,oC***s�*r(R}}}~*�(S{}}}{~}~*0`&,[{~-r�p(�z
o],={},{,oC%
,*o+{,oC%
,*o6-�*0�('
o�
o�
{},r/pr9po�
(Y,8r�p(Wo,
-(V+(W:�](V(�
o�
(Z.r%p(Z�o;
o�
{,oPoI
*B(�*f(�{(H}*:}(T*0�{:�}3{,oB
-*(Y,N(Z3%(Z{}oW(Vs�}+8(V(X{}oX}+(Z{}oW}{o�,&%{3X}3{o�}2{2*}80���s�*�(<}�s�
}�}�*�(={�(G}�{�s�
}�{�}�*"}�*6{�o@*~{�o�
}�{�oA*02{�{�o�
/{�%{�%
X}�o�
**z{�-*{�{�Yo�
*
*{�*2{�o�
**�('
o�
o�
{�oPoI
*R(b}�*R(c{�}�*0r&(e&
+U{�,o],{4(J,5,	o8-!o
+o],{4(J,o6-�{,oB%-�*s�*V{4o�
{�YX*&(j`*0�('
o�
o�
{�,r/pr9po�
(Y,8r�p(Wo,
-(V+(W:�](V(�
o�
(Z.r%p(Z�o;
o�
{,oPoI
*"(�*"(�*0)(�&+{�(J&{�oB%
-�*6{�oC*s*2(b*"(c*0A(e&+&o
o6,o],{4(J&{,oB%
-�*s*(�
*"(�
*"(�
*"(�
*0E(�
Y
(�
(�
*>(�
Y(�
*s�
*(<*"(=**.r]p(�z.r]p(�z.r]p(�z.r]p(�z"(Q*"(S*�{,oB}2{2,%{3X}3{2*6{,oA*s*2{,oE*
*Z(Q}�}�*�(S{�(G}�{�}�*J{�o9(T*{�*0RF(U{�o@{�oE,1{�oE.#{�,{,uo
,{�},*07+(&,%{3X}3{2*{,oB%
}2-�*0tG{�{,oA
u,{�oB��*uL,tLo,
��*uh,�h{,o�l�*ui,�i**0�H-*{,oC
9�{�oE

E$��N8K{�uX9;{��h{,u=
	,Joo6&o5&	o],XoC,
l.**o2-�*{,u<9�oo6&o*&o],XoC,
l.**o+-�*{�sHoA&{�oB-**{�,K{�sHoA�i-**{�,&{�sHoAtLo,
-****sHoA&+	oC,*oB%	-�*F{,oF_`*s!*0H('
o�
o�
{�-rApr9po�
{,oP{�oPoI
*2(R*R(S{�}�*:}�(T*0�{�-F{,oB}2{2-*}3{2o}2{2o0}�+{2o1}�{�,�{2o],�%{3X}3{2*�oo,
-*(Y,(Voo�
**s,*�(�s�
}�s�
}�}�*0G(�{�(I}�{�o�
}�{�o�
}�{�}�*�}�{�o�
{�o�
}�(�*0�{�,l{�o�
-,(6}2{2-*{2o5,�}3+*{�o�
}2{�o�
}3(5,�}�+!{2o2,(5-}�8k���{2o]9Z���%{3X}3{2*0u(6}�{�,_{2{�(L3K{�{2o�
{�{3o�
{�}2}�{2o5-*}3*00{�,{�
}�+{,oB
,o
*s2*
*
*
*
*
**
**
*(<*:(}�*
*
*{�*0@(oE,
	s�oE,
	s�}�}�}�*�({�}�{�(G}�{�(G}�*f{�o@{�o@*�{�{�oA(�{�oA(�(J�h*0?I
	YE
+X*Y*]*[*Z*#*
*sG*0K('
o�
o�
rSp{��'o;
o�
{�oP{�oPoI
*�(<}�}�}�}�*0d(={�(G}�{�(G}�{�}�{�}�{�(I}�{�(I}�*�{�o9{�o9}�}�}�*f{�o@{�o@*�{�oA&{�oA&}�}�}�(8*0J}�%
}�}�*z}�}�}�}�*z}�}�}�}�*0�K{�,{�oB
+{�
{�,{�oB+{�,
,
(L+?-}�}�}�}�*}�}�}�}�*-	(T*3	(U*(S*0$,{�oC
,*{�oC**
*sO*{�*s�
z0@('
o�
o�
{�,{�oP{�,{�oPoI
*V(<}�}�*0B(={�}�{�}�{�}�{�(Ht(}�*R{�,{�o9*�{�-r]p(�z{�o�-oB&{�o�*�{�-r]p(�z{�o�,{�o�**Z{�,{�o�**04LuL,*uh,*ui,*u,*ub,
�bl�h*-
~�}�*u(
,o�t(}�*u,s{}�*u,o*uo,
�ol�h*up,
�pl�h*uq,�qvl�h*ur,
�rl�h*us,�svl�h*ut,
�tl�h*uu,�u(�
l�h*o;
*�{�o,
-{�*{�rYp{�(>
*Z{�,{�o�**
*&(]*R(^{�}�*0U-r]p(�z{�.=}�{�{�{�o�}�{�-rwp(d(�z*�{�-r]p(�z{�{�o�(c*05M{�,oA(O*{�-+{�o�
3
*sh*0P('
o�
o�
r�p{�o,
-{�+{�:�]{�(�
o�
oI
*B(]}�*0UN(^{�}�{�o�
�)
+{�o�
(G�X�i2�}�}�*0�O-r]p(�z{�;�}�{�o�

+	o�

o@	oV
-��
	,	oW
�{�o�
�+{�o�
oE�X{�o�
2�{�{�{�o�}�{�-r�p(d(�z*-G
0�P{�-r]p(�z{�o�
�
+={�o�
oA��u,o�{�o�
sq�X{�o�
2�{�{�o�o�(c
�r�p(d(�z	*s!�0S{�r'p(:
,{�o,
,r�p(�zsHoA&
+oC,*oB%
-�*0M{�-+{�o�
3
*so*0�Q('
o�
o�
r�p{�o,
-{�+{�:�]{�(�
o�
{�o�
+o�

oPoV
-��
,oW
�oI
*Uo
r(�}�}�}�*j{�,r]p(�z{�*{�**0mRuL,s�tL|�(�
+!uQ,tQow
+r�p(�z{�u0-{�s�%}�o�*Ns�o�*v{�(G{�{�sv*"o�*04SuR
--sO
sP
s�
{�o@}�*2{�oE*"(P
*2sO
(P
*2sO
(P
*>(�}�*~4
*0,o,
-~4
*{�o

-r�p(�z*.r�p(�z.r�p(�z
*
*"(�
*0W(&
-(�
o�
}�+s�
}��&�33+3}�}�}�*)\0�T{�YEo8�{�(�

{�(�
{�{�-+(�
-{�-{�.e**{�(�
{�.e**(�
(�(�
{�.e**r7p(
s8
z2(R*"(S*06+{2o],}3{2*{,oB%
}2-�*s�*V(}�}�*j(}��h}�*j(}��i}�*
*{�*{�*V(�}�}�*�(�{�o�}�{�}�{�}�*s�*2{�o�*{�*�+-{�o�o{�(5
,%{�X}�*{�o�-�*:(}�*{�*6{�(O*
*�('
o�
o�
rp{�(@
(�
o�
oI
*:(&
}�*03Us
s�o�o!E.r!po(�z*03Us
s�o�o!E.r!po(�z*"(�*0.V(�
rAp(�-*(�(�s/
+�0.V(�
rGp(�-*(�(�s/
+�0JW(�
{�o!=.{�o!N.++-*(�(�s/
+�0nW(�
{�o!<.9{�o!L.'{�o!>.{�o!G.+
+++-*(�(�s/
+�0LW(�
{�o!+.{�o!-.+
+	-*(�(�s/
+�0[W(�
{�o!*.%rOp(�-rWp(�-+

++-*(�(�s/
+��{�o!-3#(�(�#�s�s/*(�*0KX(�
{�o!|.*(�(�o(�o(�s/
+�0Xo#o,
-Io"r_p(5
-5o"rip(5
-#o"rsp(5
-o"r�p(5
***0cV{�(�,L(�
{�o!/3(�(�
+-{�o!S3(�s�(�
+(�
*0)V(�
+(�s�
{�o![.�*0&Vo(�[(�(�
](�*0fV{�o!/3((�s
{�o!(�,(�
*{�o!S3(�ss�(�*(�*0LV(�
S{�o!3(�s�(�
+/{�o!3(�(�
*�..D.@.a.*.n�**0�Y.{�o!3(�s�
8�D{�o!3(�	s�
+i{�o!
	@.	a.+(�+{�(�(�.+(�
+(�s�
[{�o!.�*0aZ{�o!*;n@${�o&9�{�(�9�~4
~4

{�o"r�p(5
-R{�o"rip(5
-8{�o"r_p(5
-{�o"rsp(5
-++	++(�((�3){�o!).s(�{�o$
(�)(�+]{�o#{�o"
(�r�p(5
,2~4

+*~4
~4

(�+r]p{�o(�zs�*0Ho!s.<o!d.2o!$.(o!(.o!n3o&,
(��***0�[
{�o!(0$.W(;�8�d.,n;�s@�{�o$s�
(�8�{�o%s�
(�+|(�n(�{�o"{�o#s�
(�+J(�(�
o
.sB
)(�+"{�o&,{�(�-(�
*0\s�

{�o"{�o#n(�((�{�o!).&(�o�
{�o!).
,(�+�)(�o,
:�~�o�
&	9�o�
	o�/r�p{�o(�z	o�
3C+3o�
to.
s&o�
X2�8	o�/r�p{�o(�z	o��i/
	o��i8�o�
t	o��;�	o��o;�	o��		EA5N+Vu4-Mu$,
o.:r�p{�o(�zs&+	s&+
s&o�
X?:���	o�s#*s$*01V(�
{�o!|.*(�(�s/
+�0�]
{�o!/.S.6n.E8�(�s
{�o!E.{�o!|3`*(�ss�
+J{�o&,=(�
,2{�o!/.S.
+(�+(�s�
+*(�*0^s�

{�o#o,
:�{�o"rp(5
,W~�rpo�
(�((�s(�{�o$s�o�
(�)(�o�s#*{�o"r'p(5
,w(�((�s(�{�o$s�o�
(�,(�s(�{�o$s�o�
(�)(�r�pr'ps$**0LV(�
S{�o!3(�s�(�
+/{�o!3(�(�
*0�Y{�o!
	@.	a.+;(�+1{�(�..r!p{�o(�z(�.+(�
+(�s�
[{�o!.�*�{�o!.r!p{�o(�z*:(�(�*6{�o(&*�{�o!n3${�o#o,
-{�o"o�
**~..r]p{�o(�z*0�_$s�

r
p~�s�o�
rAp~�s�o�
r�p~�s�o�
rp~�s�o�
r3p~�s�o�
rIp~�s�o�
rp~�s�o�
rUp~�s�o�
rcp
d~�s�o�
rqp~�s�o�
r�p~�s�o�
r�p~�s�o�
r�p~�s�o�
r�p~�s�o�
r�p~�s�o�
r
p~�s�o�
r-p~�s�o�
rAp~�s�o�
rQp~�s�o�
rYp
~�s�o�
rcp~�s�o�
r�p~�s�o�
rop	~�s�o�
r}p~�s�o�
r�p~�s�o�
r�p~�s�o�
r�p~�s�o�
*0�`
s�

r�po�
r�po�
r�po�
r�po�
r	po�
r	po�
r=	po�
rQ	po�
ru	po�
r�	p	o�
r�	p
o�
r�	po�
r/po�
*0,a~�o"o�
-r!p{�o(�z*0�b����
������������
	�	�	�������������������(���(���*{�*{�*{�*{�*�(&
}�}�}�}�*(�*"(�*�o�o}z{zo7}�*>,
o-**s�*V(}�}�*�({�(G}�{�}�*V{�,{�o@*0fc{�
YE<!(.*+5(��i*(��i*�i*�i*(��i*�i*b#.
(�
�***o,
�*0`G{�oA
u,{�oB��*uL,tL(�*uh,�h(�*ui,�i**
*V{�oA�i�*0K {�oAo;

o�o#o�
,!o,
o,
.o,
o�
-�***s�*0G('
o�
o�
r�p{��%o;
o�
{�,{�oPoI
*V(}�}�*�({�(G}�{�}�*V{�,{�o@*^-
#*#�?*(�*0jc{�
	.YE)6+A(��h*(��h*(��h*(��h*(��h**0�d{�-o�o(�*{�oA
(OE5)<+K{�oB,<o(�*tL(�*�i(�*�h*to(�*#��*08e#
{�oA&+o(�X
{�oB%-�*^{�oA�h(�
*^{�oA�h(�
*0f{�oA(�
(�*
*s�*0G('
o�
o�
r�p{��%o;
o�
{�,{�oPoI
*V(}�}�*0NN({�}�{�o�
�)
+{�o�
(G�X�i2�}�*0)
+{�o�
o@X
{�o�
2�*0�c{�
YEaaaaa
,4<DQY+_(�*(�*(��i*(��i*(�*(�*(�*(��h*(*(*~4
*Jr�	p(�
(�
*>-rcp*rYp*0�d{�o�
>�{�o�
oA
(OYE$+?+I{�o�
oB-~4
*o*tL*�i-rcp*rYp*to*�h(�*o�o*�{�3*{�.
{�3**0Ag
sM
+"{�%X
o�
oAo;
ov
&{�o�
2�o;
*0S {�o�
oAo;

{�o�
oAo;
o,
o,
2o,
(�
�**0H {�o�
oAo;

{�o�
oAo;
~� @o�
��*0_h{�o�
oAo;

{�o�
oAo;
o,
-*~� @o�
2	o-
*~4
*0eh{�o�
oAo;

{�o�
oAo;
o,
-*~� @o�
2o,
Xo�
*~4
*0i{�o�
oAo;

{�o�
oA(�(�#�?Y(�
-
o,
l5~4
*{�o�
3~{�o�
oA(�(�(�
,~4
*#2#4 X#0~4
*#o,
lY
	6	iio-
*#4
#io�
*�{�o�
1{�o�
oAo;
o,
l*o�oo,
l*0�j{�o�
1{�o�
oAo;

+o�o
(�
sM

(�+4o�
(�-
o�
oN
&+	,
 oN
&Xo,
2�o;
*0�k{�o�
oAo;

{�o�
oAo;
{�o�
oAo;

sM
+C	o�
o�
.o,
/!o�
oN
&+	o�
oN
&	X
	o,
2�o;
*s�*0cQ('
o�
o�
r�p{��%o;
o�
{�o�
+o�

oPoV
-��
,oW
�oI
*8R
B(@
o�
��*V(}�}�*�o�-+}�{�,{�o@*�{�-o�*{�oA&{�oB*0�l{�
	EX�4F8�o�l�h*o�l�h*(
9�o*(
,wo*(
,eo*{�oA&{�,2+o3{�o�,X{�oB%-�+X{�oB-�l�h*~4
*6~�{��*0%m{�{�(Gs
{�}�*0G('
o�
o�
r�p{��%o;
o�
{�,{�oPoI
*B(�*R(�{�}�*:}�(T*0�{�-a{,oB}2}3{2-*{},{2o],}3{2*{2o}2(-
+�(,�{2o],%{3X}3{2*(-�8_���~{2o5,%{�X}�**�+$%{�Y}�{�-*{2o6&{2o2,�*s
*"(�*"(�*0�n(�
o�o(O
	E/ CW+go({�oB%-�+ItL(+:�h(�(+&�i(�(+to(*0/o(�
+�o9,{�(J&X�i2�*0'sHoA&+oC,*oB%
-�*s*(*
*
*0I#��}�(�}�(&
-r�	p~4
(�z}�(&((&*{�*{�*0@{�{�o,
/${�%{�%
X}�o�
}�*}�*�{�{�o,
/{�{�o�
**{�*{�*{�*{�*{�*{�*r|�((�,(-�*0�p('(
@=�;�!YE �k..��k......�;������������U.��.8[YEj|.8`E}�*(�](@
(�
}�(&8�<}�(&(=@hL}�(&8T>}�(&(=@8G}�(&8$!}�(&(=@N}�(&8�.}�(&(.3D}�(&8�((�9�d}�(*}�8�/}�(&(/@�S}�(&8ns}�(+}�8U((�,d}�()}�8/|�((�9n}�(,}�~4
}�(:@�(&(:3(&a}�8�{�}�(*3(&r�p}�+u|�((�,(,}�+Tr�	p((�z('(:33(&(:3(&a}�+r�	p((�z('((�}�+r!p((�z*0g<{�Y
+(&X((�-�(.3%(&X+(&X((�-�{�o-
(�*08<{�Y
+(&X((�-�{�o-
(�*0Pq(
(&{�Y+(-r
p(�zX(3�(&{�o-
*09<{�Y
|�((�,
(&X+�{�o-
*^(Rs�
}�*�(S{�(H}�{�o�
}�*f}�{�o�
(T*0&{�:�{,oB-*o
o8&{,oB%-�o.	o3o6&{�oo�
o6-�	oW}�+u{�o�}2{2{�o�
oC,){�o�
&{�o�
-3}2}�*{2o],%{3X}3{2*{�o�:{���*s.*&(F`*2(R*�(S{�(I}�{�(H}�*:}�(T*0(r{�:�{,oB}�{�-*{�o
{,oB}�{�oD-�}�~�}�8�{�o.{�o3{�o6&+{�o6-*{�o2,�(Y, {�(V(XoX}�+{�(ZoW}�{�o�9f���%{3X}3{�o�}2{2*s4*>(�}�*f(�{�(G}�*R(�{�o@*0J(�&+1{�{�oA&+{�(J&{�oB%
-�{�oB-�*0W&{�oC
-*{�oC
-*osHoA&oB+oC,*oB-�*s9*�('
o�
o�
{�oP{�oPoI
*(6*
*
*
*
*
**.s?��*:(6}�*J(G,}�*�(6{�o}�{�}�*sI*{�*{�*
*N{�-	}�**"}�*r(}�}�}�*�({�}�{�(G}�{�(G}�*f{�o@{�o@*0�s{�
{�oA{�oA(O
(O	/(.
	
.3~�	��ox�i*~�	��ox�i*0Wt�
({({(|-*(|-*(~
	(~(5
3*(|-�(}+�0\u({({(|-*(|-*(~(�(~(�(f,*(|-�(}+�03v({�h+(~(�(f,*(|-�*0.w({tL+(~(k,*(|-�*08v({tL(�+(~(�(g,*(|-�*0.x(s
({+(~(k,*(|-�*08y(s(�
({+(~(�(g,*(|-�*0 z({(|�i(]*0;{({(|-#+	#�?�i(�(g*.���*0|�i
�i(]*0!}�i(�
�i(�(g*0|�i
�h(�(]*0}�i(�
�h(g*0|�i
tL(�(]*0|(s(�
�i(]*v�i(�tL(�(g*v(s(��i(�(g*0MI
YE!+'�*�*��*��*�*��**08I
YE+�*�*��*��**0}�h
�h(f*0}�h
tL(�(f*0}�h
(s(�(f*:�(5
�*0 tL
tL(k*0 (s
tL(k*0 (s
(s(k*0!}tL(�
tL(�(g*0!}(s(�
tL(�(g*0!}(s(�
(s(�(g*sQ*2to*
*0K('
o�
o�
rSp{��'o;
o�
{�oP{�oPoI
*0x~�
�k�hsw���k�isw��lsw���k
	�`sw�	�bsw�	�^sw�	��k�Vsw��Wsw��[sw��Tsw���k�jsw��msw��csw��Ysw��nsw������k�hsw���k�isw��osw���k		�asw�	�dsw�	�_sw�	��k

�Vsw�
�Xsw�
�\sw�
�Usw�
��k�jsw��psw��esw��Zsw��qsw����*Rt)}�}�*z{�oB}�{���*2{�o9*2{�o*0C(oE.	s�oE.	s�}�}��}�*�({�(G}�{�(G}�{�}�*f{�o@{�o@*0*G{�oA
�i{�3*{�oA*s�*
*0Q('
o�
o�
rSp{�-+�'o;
o�
{�oP{�oPoI
*"(�*"(�*0,(�&+{�oo�
{�oB%
-�*6{�oC*s�*"(�*"(�*s�*V{�o�
{�YX*&(�`*~(�}-(�+}*�(�{}{}{}*00{u+
,o�
*{,{o�
*~4
*0.�{u&
,o�
+o�
-*o�
-�*01�{u*
-*o�
+(�,*o�
-�*0�{u&
,o�
**J{(�o}
*0r�{u&
,o�
o�
*{u%,,{,o�
o�
o,
-~4
*o�
o�
*{u},o�
*~4
*0>(�
o,
-{(�o}
*{rYp(�(>
o}
*J{(�o}
*0J�{u&
,o�
o�
*{u%,{,~4
*o�
o�
*~4
*{*0\�{u+
,Ko�
YE	+*{,*******J{(�o}
*0Ho�

o,
-~4
*{,
{o�
*r3p3r+p*r�p3r}p**0g�{u&
,o�
o�
o�
,*~4
*{u%,&{,~4
*o�
o�
(�
	,	*~4
*�{uL,{o�
}}{*0��{u+
9�o�
YE	66ZZNB+Xt&o�
*t%o�
*t~o�
-~4
*o�
*t)(�*to�
*t}o�
*~4
*{tL*s�*0�ur
-*(�*0&�ur
,{}{}**0\�{u&
,Ko�
,Ao�
o�
(5
,$o�
o�
(5
,o�
-	}*o�
-�*0f�{u*
,Uo�
,Mo�
,Cu&,/o�
o�
(5
,o�
o�
(5
,	}*o�
-�*0i�{u*
,Xo�
,Po�
,F(�_,(�-
u~,�_o�
_b_,	}*o�
-�**06�{u&
,%o�
,o�
-	}*o�
-�*0A�{u*
,0o�
,(o�
,(�,	}*o�
-�**0��{u&
,pE7+E(�+<(�+(�,)o�
o�
r+p(5
-�+(�-(�,}}**Br5
p(
s�
z0��{u&
,xr}p(5
,*,o,
-r}p(�+*o�
o�
(5
,}}*(�-�r+p(5
,(�}}**0X�{u'
,G(�,=o�
.4o�
(�,u),u)-	}*
o�
3�*0m�{u'
,\(�,Ro�
.Io�

u&,/o�
o�
(5
,o�
o�
(5
,	}*o�
3�*0��{u'
,o(�,eo�
.\(�_,(�-
u~,�_o�

	o�
_b_,u),	u)-		}*	
o�
3�*0H�{u%
,7{-/o�
,%o�
+o�

o�
-	}*3�*0��{u%
9�{9�(�:�EL+}(�{.*(�
+d(�
,Zo�
o�
r+p(5
-�{(�-�+3(�
,{(�-�-(�{(�-(�
,	}**0>�{,{}}*{t+
(�,	}**0]�{u'
,L(�,Bo�
.7
(�,	u),u)-+	
o�
3�	,		}**0<�{u*
-&ra
p�o��(	s8
zo�
*0�{u
,o
**0�{u
,o
**0�{u
,o	
**0>o�

(�,-+o�
u),o�
(.

(�o�
3�*0,�sO

~4
o}
&r�po}
&r3po}
&*�(�-u&,*o�
_b �_��*0��{{3{{3*{��{��a,\{u)
,o�
{3(�{�**{u),o�
{3(�{�***&(��*"~�*0�(�
,*o�
-�*0 �o�

,o�
,*o�

-�*0+�o�

-*(�,*o�

-*(�*0)�o�

-*o�
o�
,*o�
3�*�~-%(�
r+po�
r3ps�
(+&~*0*�o�

+o�
,*o�
,	o�
3�*��b
�b%�>(o
�*0Z�(�
oNu,
t(+*u-!r�
p�o'
�(	s8
z��*0H�(�
o
{
3{
�3}

+s

{
}
{
}
*(
*0j�{
E@�8;}
{
o�}	
}
8{	
o�
t}

{

o&}
{
u-&r�
p�{
o'
�(	s8
z{
�}
}

ݩ}
{
u)}

{

,h{

(�,[+A{

o�
u)}

{

,;{

�}
}

�@}
{

{

(�o�
3�{	
oV
:��(

�(
�*Aaa{
*s3
z0&{

YE*�(
�*2{
�*z(&
}
(�
o
}
*�}
{	
uX}
{
,{
oW
*0��s

qs}
}
*"(�*0��-r_ps9
zu�,"r�
p�
��(	s
zu)
,7(�u~,"r�
p�
��(	s
z(�s�*&(�*0#�-r_ps9
z�s(+*&(�*:(�(+*&(�*0(�-r_ps9
z�s(+t *0�o�

,*u~,*o
*0>�(�-*(�o�

u),3*o�

u)-�o�

+�0��
8�o�

	 2	"@�-s
Y1YoX		YE- ::"34rpo+.rpo+!r%po+r+po+	oXo,
?[���-*Y1Yoo;
*2~	o
*0��uL
,7(�
o,
,o�
+.&(�
(
,*#��*uh,�h*ui,�i-
#*#�?*(�
(
�&�&�&�#��**(t��t��t�Q0#f(

Y#�?.*#�?X*6~	o
* 	

^�]%�?(o
�	*(&
*0 G~$-s&

$(+&~$*0��(�%(
�~%,� �
��%r1p(�r?p(�rrp(�r�p(�r(p(�r�p (�r:p@(�rPp �(��
,(
�*��
0I�
+;o�
Xo�
+�~%��%q�`ҁ�X1�X
o,
2�*"}&*n�~%-(��~%s�*F{&�_��*F{&�_��*F{&�_��*F(�-:�**F(�-:�**J{&�_��*� �/rjpco�
__b_��**J{&�@_��*V{&� �_��*F{&�_��*J{&� _��*F(�-_�**F(�-:�**F(�-:�**.09(*F � ��(*F � ��(*F � ��(*f �Y �Y
b X`*0) Y
 � ]X�S � [X�S*.(��*0*,%
+{&o�
�_-*X
o,
2�*0X,S
+F{&o�
�_-/Xo,
/o�
(�,Xo�
(�-*X
X
o,
2�*0 
+o�
(�-*X
X2�*0
+�(�-*X
X2�*0',"
+o�
(�-*X
o,
2�*2YY��*06
+%'{&o�
�_-o�
:3
X
o,
2�Y*0(
1
o,
�**0f
o,
/W'{&o�
�_-o�
:3X
+'*'{&o�
�_-o�
:3
X
o,
2�Y*0(
1
o,
�**0P
o,
/A'{&o�
�_,X
+*'{&o�
�_,
X
o,
2�Y*"(**(&*0#(
,	o,
.
,(**0?<T(
,/Xo,
/!o�
:3X(,	TXX
*0B<(	,	o,
.(,o-
QXo�
Q*r�pQQ*0��o,
2 r|p�
~4
�(	s
z'o�
(�,-(�o�
(�-r�p((	s
zr�p((	s
z0c:o�

3~4
QQ*,o,
Y3r�p:((	r�ps_
zo-
QX
o,
Yo-
Q*.(��'*�o�
Xo,
2+	Xo�
(*.�i(*^�X2+X�(*0���L
(�,H,E(��]��s
�(@
r�p�
	�b�	(0
�+B-
r�p�+(@
( 
�(@
r�p��b�(0
�*(&
*(&
*{8*�2	{81rps~
z-(*(!*0}{8X 0"{3-sM
}3{3oN
&+={6-({7{6�i3({6%{7%
X}7�%{8X}8*0��---*rps9
z-*/r�ps~
z2X�i1rIps~
z{8X 0;{3-2+s"
}3{3o#
&%{8X}8*�]
�(�
*>o,
(*0��---*rps9
z-*/r�ps~
z2Xo,
1rIps~
z{8X 07{3-s$
}3+{3o%
&%{8X}8*�%,(&
X
�ZX(*0@{8 0{3,#{3o'
+{6,(}3}8*0A{4,*
+{4�|( X
{52�}6}7}5*0��{8 1{53({7- {3-~4
+{3o;

8�{3-{8s"
}3+{3{8o(
{8{3o)
Y+-{4�|{9
{3		�io#
&	�iYX{5Y2�{3{4{5Y�|{9o#
&({3o;

*0J{4-; �]}6�|}4{4�|{6}9}5*(*0��{6-(
+u{7{6�i2(
{6�i{7Y/
{6{7�]�("��ZX%{8X}8%{7X}7Y0�*0��{5X{4�i3-{4�iZ�|
{4{4�i(+
}4{4{5�|{:,B{4{5�|{:o,
t!,{4{5�|{:o-
+ �]}6{4%{5%X}5�|}9}7*�{:-{9s.
}:+{:{9o-
}9*0��{83*{8 0{3o'
8�
+0{4�|{9�i2#{4�|{9�iY
X{52�{5/L{4�|{9}6}7X+{4�|( X{52�}5}8*0�>xiia_:�+IS�X�XYi_,0�2@YKT�X�XKT�X�XKT�X�XKT�X�XY/�_,KT�X�XKT�X�X_9�KT�X�X8�2lYIS�X�XIS�X�XIS�X�XIS�X�XIS
�X
�XIS�X�XIS�X�XIS�X�XY/�_,.IS�X�XIS�X�XIS�X�XIS�X�X_,IS�X�XIS�X�X_,IS*�����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADPr����]����;�o�Q�K��M��k˴�;��9��&Z�D�i׻�*ظdW�m�8ݳ�V�AOg��\~��W����	�@�p��R�!|�$.6}G-]��_�Aa�<_q��ze��{E(Oe��c>�~��r�5��F���l�|�$x0Argument_CreateNavigator8InvalidOperation_BadNodeType>JInvalidOperation_UnexpectedEvaluationr*NotSupported_MoveToId� Sch_EnumFinished�$Sch_EnumNotStarted�"XmlUndefinedAlias%Xml_BadNameCharM(Xml_BadStartNameChar�Xml_EmptyName�(Xml_InvalidOperation"Xml_UserExceptionF"Xp_BadQueryObjectK(Xp_CurrentNotAllowed�Xp_ExprExpected�"Xp_FunctionFailed�,Xp_InvalidArgumentType(Xp_InvalidKeyPatternfXp_InvalidName�"Xp_InvalidNumArgs�"Xp_InvalidPattern(Xp_InvalidTokenKXp_NoContexth$Xp_NodeSetExpected�Xp_NotSupported�"Xp_UnclosedString!Xp_UndefFunc>Xp_UndefVarb.Xp_UndefinedXsltContext�Xpn_BadPosition�<This XPathNavigator cannot be created on a node of type {0}.2This operation is not valid on a node of type {0}.6The XPath expression evaluated to unexpected type {0}.)This XPathNavigator does not support IDs.!Enumeration has already finished.+Enumeration has not started. Call MoveNext.&Namespace prefix '{0}' is not defined.IThe '{0}' character, hexadecimal value {1}, cannot be included in a name.BName cannot begin with the '{0}' character, hexadecimal value {1}.(The empty string '' is not a valid name.>Operation is not valid due to the current state of the object.{0}WThis is an invalid object. Only objects returned from Compile() can be passed as input.5The 'current()' function cannot be used in a pattern.'{0}' is an invalid expression.Function '{0}()' has failed.JThe argument to function '{0}' in '{1}' cannot be converted to a node-set.]'{0}' is an invalid key pattern. It either contains a variable reference or 'key()' function.$'{0}' has an invalid qualified name.;Function '{0}' in '{1}' has an invalid number of arguments.!'{0}' is an invalid XSLT pattern.'{0}' has an invalid token.eNamespace Manager or XsltContext needed. This query has a prefix, variable, or user-defined function.'Expression must evaluate to a node-set.'The XPath query '{0}' is not supported.This is an unclosed string."The function '{0}()' is undefined. The variable '{0}' is undefined.DXsltContext is needed for this query because of an unknown function.DOperation is not valid due to the current position of the navigator.BSJBv4.0.30319lȉ#~4��M#Strings��#US��#GUID��U#BlobWߢ+	�%3��J+�/Y8�B��!
�
;%
P%b�g�}���������������"�,�>������W�e����������i���p$�?(�>��,�.�G2�T2�(33R33l33�33Y43{4363I;=;<�Q<��<r<�?r<�?��?�?'@@>@@[@@y@@�@@�@@�@@�@@�@@"A�DA�fA@�A@�A�A�A�A�A�ABB�7B�aB�tB��B� ��B@�B�B��C�.C�AGC�oC��C��C�C�C�
D�3D�C�D��D��D��D�E�CE�CE�}E��E�F�"F�(F�|F��Fr<�Fr<�F�7G�bG�AwG���~G@�G�
�G��G��G@�G�H�H�H�H�H�#H�7H�BPH�XH��H��H��H�YI3qI3�I3�I3L�A3L3MLALyL��L��L��L��L�B�L��L�M�?NM�?xM�?��*�7C[	Ml[
N�[N���n�����[���[���[(�
�����[���[��	[���[��*�����5[��B[��O[��[[���k[��{[���[���[-������[0������
��
���D�
���!���7���O�x�#X�.e�x.n6�q�D+6����+<����,Q����4b���5k��5q���<q���?y���A���D���H��xL��xN���P�0�xS�5Z�>�i�Ko�Qt�W��z�d��{�s��|�����}�������������������������
������������ ���+)���1<���8G�x�BM��FY���N�c���]r�8�g��8�n��`�v���9���H�������������x����D��
������#��-����;���L���\���l��z��������x������-����-����3���8����?����G��PA�w'�{/��;��P����e���z���[0��[	���[	��[	����
������['K(�[/�/9#�E;#�E@#KF@#�F@#J@#S�KS�SS�YS�eS�rS�KS�|S��S��S���S��S��S��S��S�	S�)	S�B	S�_	S��	S��	S��	S��	S��	S��	S��	S��S�
S�
S�&
S�<
S�O
S�Y
S�l
S��
S��
S��
S��
S��
S�S�S�0S�AS�NS�fS�zS��S��S��S��S��S��S�S�'S�=S�RS�\S�rS��S��S��S��S��S��S�
S�#
S�5
S�A
S�W
S�y
S��
S��
S��
S��
S��
S��
S�&�)S�XS�qS��S��S��S��S��S�S�S�%S�3S�HS�ZS�lS��S��S��S��S��S��S��S�S�S�S�2S�BS�TS�aS�mS���a.�e.S�2�S�@�S�D�S�N�S�V�S�_�S�d�S��S���S���S���S���S���S���S��S��S�(�S�5�S�=�S�J�S�V�S�e�S�q�S��S���S���S���S���S���S���S���S���S��S��S�%�S�7�S�J�S�R�S�i�S���S�����V��f/V��f/V��f/V��f/S���S���S���3�/39�03H�03��0�0��V���0V�9�0V�A�0V�K�0V�U�0V�Z�0V�p�0V�{�0V���0V���0�� 1���Fw1Ow1W�)nw1��V�{�1V���1��V���1V���1V���1��V�U�1V���1��V���1V���1V���1V�'�1V���1V���1V���1��V���1V���1V���1S���0��0����1��1����)��1��1
�1��V��1V���1V���1V�A�1V���1V���1V�`�1V���1V���1�T2��V�0n2V�en2V�n2V� n2V�On2V�Gn2V��n2V�n2V��n2�0! �0& + / �8 �)B �)T �Z �2g �2& t � �2��V�� �2V�� �2V�� �2V�� �2V�� �2V�� �2V�
!�2V�!�2V�!!�2V�-!�2V�8!�2V�A!�2V�K!�2V�S!�2V�^!�2V�m!�2V�z!�2V��!�2V��!�2V��!�2V��!�2V��!�2V��!�2V��!�2V��!�2V��!�2V�"�2V�
"�2"e35"t3<"y3B"y3��V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"t3V��"�1�#%4�#�)& t �#�#�0�#�0/ �4$<4��V��^4V�L$^4V�@^4V�U$^4V�\$^4V�d$^4�0j$%4/ �x$s4}$��$�4�4�#%4�$��$�4�$��$�0Q�0%�8%�4D%�4N%��%y3�%y3�%t &5&&<40&�0M&%5�%y3t & ��0V&�)�&��V��&%5V��&%5V�A%5V��&%5V��&%5V��&%5V��&%5V��&%5V�K%5V�'%5V�
'%5V�'%5V�('%5V��%5j$-'�)6'�)?'�)L'�)X'R5��V���5V��'�5V��'�5V��5��V���5V��'�5V�(�5V�(�5V�(�5(�0*(�)6(w18 �)V&�)nw1�%%44$<48 �)[(%4`(�)}(�)0&�0&5�(�6�(�)�(y3�(t3<"%4B"%4�(%4�(%4�(�)�(�)�#�0)�0t & K)�6W)�6�)�6��6�)7j$%4�)L'�)*J7A*�1G*�1Q*N7W*�1! �1`*j7�*w1& / �`*j7�*�71�,�21�,�21�,�21�,�21�,�21�,�21�,�21�,�21�,�2-�7'-�7I-�2O-�W-�_-�2�-%4�-�2�-%4I-�2�-�2�-�61.x8�-%4�-�2K)�6T ��.�.��.�8�.�8& t �.�.�8�.�)�.�8��V��/�8V��/�8V��/�8V��/�8V��/�8V�0�8V�0�8V�0�8V�0�8V�"0�8V�'0�8V�-0�8V�00�8V�30�8V�60�8V�;0�8V�B0�8V�G0�8V�M0�8V�S0�8V�V0�8V�Y0�8V�\0�8V�`0�8V�c0�8V�j0�8V�m�8V���8V���8V�u0�8V�y0�8}0w1�05�%�06(w1�0%4�0z9�0/ ��(t3<"%4B"%41�0�91�0�9x2%4O�0<"%4B"%4}2�)Q��2�Q���S��2S��213�033�:K3j7[3�:b3�:3X6�0S��6S��6S��6�S��6�S��6�S��6�S��6�S��6�S��6�S��6�S��6�S�	7�S�7�S� 7�S�&7�Q�17Q�B7�;S�U7Q�b7Q�p7Q�y7Q��7Q��7Q��7Q��7Q��7�7j7�74G�7:G�.�8��V��:�GV��:�GV��:�GV���GV��:�GV��:�GQ��:�Q��:�Q�;�Q�+;�W;�Ge;�Gm;�z;�0�;��;�<�0'<H�E�JhF�J�FK�IK�L�R�J�Q	K�K�9>w1TKw1`K�0pKj7xK�Q�K�Q�KR�KR� �/�)� �5�)!�/�)
!�E*!�/i.8!��m.d!��r.g!��w.t!�|.�!��.!"��.,"��.	U"�'C>G
�
�~/
�
��)
W"�/i.
���/
_"�
�)
g"��~/
j"��)
q"���/�
,�/|"�:*�"�J*�#�w�/
3$���/���/�
��/�
��)�
��)�
��)�
��)�
��)�
�~/<$�	�)x$��/�$�)�/�$�	6�/�$�	K~/�$�]�/%�j�/�z~/��~/D%��*�%���/���/���/�%��~/�%��~/��~/��~/�%�~/�~/� ~/&�-i.�8�/�?�/&�H�/d&�H�/�&�T�/�&�T�/l'�T�/!x'�T�/",(���/$|(���/&�(�	d~/'�t�/'�(���/(�(���/)�)��0*�)��0+�)��
0,�)��0.!*��0//*��"00@*��*02i*��103x*��604�*��=06�*��C07�*��K09\+���/:j+��Q0;x+��X0<�+��_0>�+��g0@�+��_0C�+��g0E�+�	~/H�+�o0H�+�o0H�+�'o0H�+�3o0H�+�@o0H�+�Qt0H�+�^�)I,�^{0Jh,�^�0K�,�	j�)L�-�	w�)L�-�	��)M4.�	��)M�.��)N�.�{0O�.��0PD/��)Qd/�{0R�/��0S�/�3�)T�/�3{0U,0�3�0Vt0�'�)W�0�'{0X�0�'�0Y1���0Z1��i.[1���0[T1���0_�1���0c�1���0g�1��0k42���/o�2���/q�2�~/rD3�'�0r�3�T�)r$4�a�0rH4�u�0sh4�~�0t5���0v�5���0w�5���0x�5���0y�5���/z@6���/{�6���/|�6��0|H7��0~�9�%�/�t:�/i.�:�'C>G�|:�/�0��:�
�)��;��0�<<�/�0��=�/i.��=�/�)��=�/$1��=��+1��=��11�>��81�8>��@1�X>�/I1�c>�/P1��>��Y1��>���)���`1���~/��
��/��
�e1��>�	e1�/?�i1�7?�%�/�S?�/i.�b?�/{1�x?�	��/��?��~/�4@�hi.�=@�/{1�H@�
�)��@�/i.��
��)����1����1����1����1����1��
��1��@���0��@���1�A��/�4A�'�1�dA�Z�1��A�/i.��A�#�1��A�6�/��A���1�B�/2�lB�1~/��B�,�/��B�?�/��B�u*��B��*��B��2��B��
2��B���)�0C���)��C���)��C���)�D��~/�D��2�zD��)��D�	~/��D���)��D��/�`E�2�F�!2�<F�,e1��F�]*��G�]�/�,H�?%2�hH�].2��H�j�/�dI�z~/��I��~/��J�j�/��K�S~/��K�a~/�L�s32�ML��i.�^L��~/��L��~/��L��82��L��82��L��82��L��82��L�:*��L�e1��L�#~/��N�(i.��N�.i.�O�'C>G�FO�/i.�NO��Z2�lO���/�pO���)�wO���)�~O���)��O���)��O���)��O���)��O��~/��O��)��O�K~/��O�d~/��O�,�/��O�~/��O�-i.��O��~/��O��~/��O�~/��O�z~/��O��~/��O�?�/��O�]�/��O�j�/��O��*��O���/��O���/��O���/��O� ~/��O�8�/��O���/��O�t�/��O���/��
 d2��
��1��O�/i.��O�/r2�P�/y2�+P�/�2�`P�/�2��P���/��P��e1��P�	H ~/��Q�/�2��Q�/�2��Q�/�2��Q��`1��Q��~/�	R�/y2�R�/�2�!R�/�2�,R��~/��R��`1��R�/y2��R�/�2��R�/�2��R��`1��R��~/�`S�/�2�{S�/�2��S�/�2��S�/�2��S� d2�S���1�S�{ �2�S�� �2�S���)T���)T�'C>G�T�&"k3�T�/}3�T� d2�T���1�T�H"�3�T�Y"�3�T�f"�3�T�'C>GU�/i.U�/�32U��"i.�hi.<U��"�3��e1kU�/i.sU�/�3|U��~/�U�e1�U�#�3���3�#�/	�U�#�3	�U�	%#�3
�
=#�1
�U�	L#�3
�U���3
V���3V���3$V�[#�3
�V�b#�3�V�l#�30W�y#4�W��#4*X��#4UX��/mX�/�3�X�/*4�X�/54qY�hi.�Y�#�3�Y���) �Y���) �Y��#�) �Y�$~/ �Y�
$�/ �Y��e1 �Y���/ �Y�$�/ dZ���3!�Z�%#�3"�Z�=#�1"�Z��/"|[�/*4#�[�/D4'�[�hi.(�[���3(�[�#�/)\���/)=\��e1)E\�e1)R\�L#�3)V\�/*4)c\�/K4-l\�A$R4.�\���30n]��`11v]�L#�31�]�/c41�]�/l43�]�hi.4�]��~/4+^�e148^���/4@^��e14H^��`14P^�/{44_^�/�45^�/{16�^��$�47�^��`17�^���/7
_��e17_�e17"_��~/7H_�hi.7Q_�i17^_�%�/7{_�/�37�_�/�48�_�hi.9�_�#�394`��$i.:�`���3:�`�#�/;+a���/;Oa���4;^a��`1=fa�=#�1=ia��e1=qa�e1=~a�L#�3=�a��/=�a�/�4>�a��$�4A�a��$�4B�a��$e1D�a��$e1Db�%�/Db�/�4D3b�/i.E<b���4E�b�W%e1Gc��4Gc�d%�4H\c��5J�c�/5J�c� d2L�c���1L�c��%�3L�c��%�3L�c�/5L�c� d2Nd���1Nd�&�)N
d���)Nd�/*4N8d�/5Rtd�hi.S�d�:&�/S�d�B&�/T e�#�/T'f��`1T/f�/*5Tgf�/75Y�f� d2[�f���1[�f��%�3[�f�_&@5[�f���)\�f���)\�f���/\�f�i&F5\�f�x&~/\�f��&�)\�f��&�)\�f�hi.]�f�c'W5]�j�o'g5`�j�{'n5adl��'~5dm��'�5fPm��'�5g�o��'�5i(p��'�5k�p��'�5nq��'�5p@q��'�5s`q��'�5u�q��'�5x�q�/i.z�q�/i.z�q�/�5z�q�hi.{�q���/{�q���3{�q�#�/|r�#�3|r��`1}r�=#�1}r��e1}&r�e1})r�L#�3}-r�/*4}:r�/�5�Or�hi.�`r�#�/��r�#�3�7s��`1�?s�/*4�Ws�/�5�|s�hi.��s�#�/�Ht�#�3��t��`1��t�/�5��t�/
6��t�#�3�<u��/��u�/�5��u�/6�v�hi.�$v�#�/�w��`1�w�/�3�)w�/6�`w�hi.�iw�#�3�ww���3��w�#�/��w���/��w�=#�1��w��e1�x�e1�
x�L#�3�x��/�6x�/6�Kx�/+6�`x���3��x��`1��x��e1��x�L#�3�y��/��y�/�3��y�/26��y���3��y�#�3�z��`1�z�/*4� z�/96�,z���3�yz��`1��z�/i.��z�/�4��z�/@6��z�M(J6��z�R(P6��z�V(P6��z��U6��z�/i.��z�/_6��z�hi.��z���/�{��e1�
{�e1�{�#�/�%{�/�3�.{�/f6�7{�#�/�f{���3�t{��`1�|{�=#�1��{�L#�3��{�/m6��{�/x6��{�hi.��{��%6��{�#�3�D|�#�/��|�k(~/�}�#�3��~�L#�3��~��`1��~��/�@�/*4�M�/�6�b�hi.�t�#�/�
��$�/�6���`1�>��/*4�h��/�6����hi.���#�/�����(~/�4���(�/�p���`1�x��#�/�{���`1�~����3�����e1����e1����L#�3����=#�1����hi.������/����/i.����/@5���� d2������1�����(�3����/�6���/�6�;��#�3�U����3�����(�6�׃�=#�1�ڃ��`1����/�;��/�6�`��/�6�Є�hi.����#�3�����3�P��)�3�u�� )�6����6)�6����#�/�l��#�3����=#�1�����`1������/�����e1�����/���/5���/�6�j��hi.�����/����#�/����e1����e)�6�<��s)�)�h��e1���=#�1����/5����/�6����#�3�����3�4��=#�1�u���`1�����/�܊�/7���/7�T��#�3�4����3����#�3�\��=#�1�����`1�����/�,��/7�I���)6�d����)�l���)i.�p����1�����1������1�����1�$����1�d����1�q��/%7�z��/i.���/,7��)17��)97�
�)~/��)�/�*D7���/�1	���*�)
���:*
���)17���)97
����)~/����)�/��*D7��/R7����%]7K��/*4X��/c7d��#�/����`1���/�)đ�/m7ߑ�/,7 ��� d2!�����1!��d*�/!
��/r7!#��/y7#T���`1$\����/$i���e1$q���~/$���/�7$�����3%ǒ�=#�1&Ւ��`1&ؒ��/&��/�7'���*�7(\���*�7)����*�7*����*�7+���*�7,���*�7-t���*�7.��+�7/H��+�70���6+�71��E+�72D��T+�73���_+�74��m+�75P��}+�76����+�77����+�78P���+�79t���+�7:0���+�7;����+�7>���+�7?���+�7@��,�7AX��,�7B��(,�7C@��:,�7D���S,�7E-��d,�7FS��o,�7Gb��y,i.Hp���,�/H����,�7Iȡ�-�7J|��1-�7J4��A-�7Jl��'C>GK5��h-�2K=��r-e1KE��~-e1KM���-�7KU��/8Kz��/i.O���/8O�����3P���#�3Q����`1Rɦ�/8Rߦ�/%8T��#�3U����3V����-,8W����-18X����-68Y ��=#�1Z#���-68Z<���-68[����`1\����/\��/8]��/<8_+��#�3`A���C8aY���H8bd����3cܩ��M8d����-M8e̪��-M8f���-M8g����-M8h!��=#�1i$���`1i,���/i��/S8j���/a8l��#�3m,����3n���-h8o����-m8p���-r8qí�=#�1r���-r8r8��.68s���).68t��2.r8uX��B.r8v̯�Q.r8wڰ�[.M8x��h.r8y���r.r8zo���`1{x���/{���'C>G|	��/8|��#�3~G��|.}8p����3�a��=#�1�p���`1�����/����/�8���/�8���hi.�,��#�/�ٵ�~/�����.~/�/���`1�7��/�3�@��/�8�L����3�����.�8�8��#�3�k���`1�s��/i.�{�� d2�~����1����/�)�ٷ�/�)���/�8���/~/�8��(/�8�`��5/�8�h����)�p����)�x��>/�)����N/�3����^/~/����p/i.����y,~/�<��z/�3�����/�3����/�)�P���/�)����/*4����/e9�ؽ�hi.���#�/����`1���L#�3���/*4�#��/l9�N��hi.�`��#�/�����`1����/�6����/s9���#�3�����3�4��#�3�����`1�����/���/i.����`1�����/����e1���e1����~/���hi.���'C>G����/�0���/r2���/9�<���`1�D����/�L���e1�T��e1�W���~/�k��hi.�t��/�6����/�9����#�3������3�x���0�9�����0�9�D���0�9�����0�9�����0�9���1�9�@��1�9���� 1�9����.1�9����<1�9���<1�9�(��I1�9�X��V1�9����e1�9����t1�9�����1�9�����1�9����1�9�4���1�9�����1�9�����1�9�����1�9� ���1�9�H���1�9�X���1�9�|���1�9����2�9����2�9����#2�9�$��12�9Q���`1Y��<2�9f��=#�1l���/���'C>G�/�9�@2�9	�b2�9�n2�9H��/�7]���~/|��hi.�����)���/�6���/�9��#�38����3n���`1v��=#�1|���/���/�3���/�9�����3$��#�32���`1:��/�3C��/�9L���`1 T���e1 j��L#�3 �
r-e1 �
~-e1 �
��1 �
�-�7 �@2�9 �
�2~/#�
�2~/#�
�2�1#��:#t��/�:$���/�:&�����)'���K~/'8��d~/'x���~/'�����)'���r3�)'0����)'z����)'���3�)'���,�/'�����/'X����)'l���3�:'����3�))3��6�/)`����))����/)(��t�/)H��8�/*|��j�/+���H�/-X��H�//���z~/0��~/0d����/0���?�/1����/2����~/3����/3|����/5���~/6\����/64�� ~/7����~/7����/74���3~/7X��	�3e17|��	4e17���_4�:7���k4�:8$���4�:8P��t�::����4�:<����4�0=���4�:>0���4�:?\��5�:@���'5�:A���H5�:B���c5;B`��'C>GD|���;D����5;G����#;H����+;IE���55;KP���5=;M���5G;P����5Q;R����5];U����5k;W���6{;Z��,6�;[P��:6�.\)��h6�.]8��s6�;^���6�;_3���6�;`h��/i.aP��'C>Gap���70Ga����7>GaT��8BGa���/HGc���8NGd���8TGd���)8TGe���<8TGf��T8TGg��e8TGh(��{8TGi;���8TGjd���8TGkw���8TGl����8TGm����8TGn����8TGo����8TGp����8TGq���	9YGr���9^Gs��!9^Gt��09^Gu*��<9�3vD��Q9cGxy��d9�/{���u9lG|����9lG}$���9qG~P���9xG�x���9lG�����9�G�����9�G�����918� ���9�G����:18����:�G���:�G���+:�.�(��<:�G�X��P:�G����[:�G����k:�G����|:�G����'C>G�����:�G� ���:�G�,���:�G�D���:�G����/i.����/i.�����;e1����;�4�0���;�G�����;�G�f���;�)�x���;�G�,���;i.�x���;i.����
�)�����;i.� ���;�G�����;i.�����;H�����;�4����<H����!JjJ�8��YJi1�@���~/����	�JP6�����Ji.�����Ji.�(��	)K�/�5��/�4�T���Ki.�6<B<K<& �& & e<& K<t �<�<�<�<�<�<�<& & �<�<�<�<�<�<! �<�<�<�<�<! ! �<�<�<! �<�<�<�<�<�<�<�<�<�)�<�<�<�)�)�<�)�<! & �<! 8 & �<8 ! 8 & �<8 ====K<K<======&=&=&=&=&=&=1=t �<�<K<t �<�<K<t �<�<K<t �<�<K<t �<�<K<�<�<! �<E=H=�<! ! ! ! ! K=O=_=�<�<f=�<l=v=��~=���-��-�=��-~=�����=��Fn�)�)A*G*�=W*�=*�<�<*�=�=�=�=�=���=�<t �=��& �<�<}$�}$�<�=& <}$�<}$�<}$�<}$�t �<�<�=�<�=& t �<�<�<�<�<8 ! 8 & �<8 �=! & �<�=! 8 & �<8 �<! 8 & �<8 �=I-g t & g I-I-�-�(�(<"B"�<�=�<�<nO�%�%�%<�=�=�=�=<�=j$K<�=�#�#& t �#�<�<�=n�=�#& t �#�<�<�#& t �#�<&&�<j$�=x$�=n�#�<K)�<�=�=�$�$�$}$}$K<�=�=�=�=�=�%�%& t �#& t ! �<M&�%t & �=M&�%K<K<�=�=>	>�=�=>�=>�=�=>�>�=�=>�=j$j$-'6'j$L'j$-'6'j$L'�<�<O>m �<�<�#& t ! �<�<>m 8 V&�<�<�=>m 8 V&�<�%�<�<�<�=�#& t �#8 �<�<�=>�<�<�<�#m �<�<>>K<�<(>�<n>[(`(�<�%O�=>m �<�=�#& t ! �<�<�(�(<"B"�<�<n�(E=H=�=+>2>�<K)�<9>@>E>@>E>K)�=t & �<K<& t �<�<n�=t & ��<�<nl=�=j$�<L'�)�)A*G*�=W*�=*J>P>t & t & �-�$V>^>*t t & t & �-�$V>^>A*G*�=W*�=�=�#m �<`*`*`*�*& �=`*n�=�*j>y>�#�#�#�#�#�#�#�#�#�>�#�#�#�#�#�>�#�#M&��*�#�#�#�#�#�#�#�>�>�(�>�>I-O-W-_-�<�<�<�-�-�<�<n�>�>nnn�=I-�-�<�<�-�-nnnnnn�=�-�-�<�<n�>�>nnnnnnnnnn�=�-�-�<�<�<�=>8 & t �#V&�<�-�<�<(`*�<�.�#& t �#�<�#& t �#�<�%�0�<K)nO�=�>�=�(<"B"�<�<n�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(E=H=�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(E=H=�(E=H=�(�>�>�(�>�>�(�>�>�(E=H=�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�(�>�>�>�=�>�>�(�>�>�(�>�>�>�>9>x2�(<"B"�<�<n�=�%�<�<�<�%�<K)��>K)�$b3�<�>�>l=l=�<�=�<�=! �<�<�<�<�=! �<�>�>�>E=H=�>! �=�=�>�>�>�=�$�<�<9>�$�$b3�$�<�$�<�<�$�<�$�<�<�$�<�$�<�<�$�>K<K<�>K<K<�>K<�7�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>?�>�>�>�>�>�>?????�>K<%?�<+?-?+?+?-?+?+?-?+?+?+?4?+?-?A?+?t �<+?M?]?& t k?q?v?q?v?q?�;v?�?�?K<K<K<%?�K<K<%?��?��?�?�?�?�?	K,!%)2T=rE�n�!�r�%�aQS�1Q��1)w�/):*)J*�%�4��3~/�4e1�H4e1q/i.y/i.�/,7�/,7�/i.�/�)�/�)�/�)�/�)�/�)�/�)�/�)�/�)�/�)�/�)�/�)�/,7�/�)/H/!H!/�4)/i.1/i.9/�H/�)5�)�B�)/�)	/i.	�B�HI�B�H�/�HY�B�H�Ia�;e1aQ.Ia�-I��Br.a CI�*Iq/�)y/i.a]CacCMI/i.�$fI�/�)�/�)a�CMI	
�)�(i.a�-�Ia�-�Ia�-�I��Cr.�/�I�/i.��C,7��C,7�D�I���I�>D*J�PD�)�\Di.�lD*J��Di.��D*a/i.a�;9J/i.q/XJ$jJ,�P64�DP64��Jq�D5I�~/��Di.�/�J�/i.�D�I��D,7�/�)Y��JYs32�/5Y#~/Y�
2Y��)Y��)Y��)Y�~/Y��)�,E�0Y�~/YS~/�AEi.�UE�)�bE5Y�i.�/i.�;F�J/Ka�-K��F�)9/$1��F�4���)a�;�Ka�;�K	�e1Y/i.Y,�/�GXJ�G,7�3G*1/�)Yz~/</@6</i.<3GJ6De1D�$$LD3GJ6D[#*LaSG;L9/�)Q��)��G5q:*aS�/I�G^L�>D�)a�-gL�,E5D/i.D/@6D�;i.L/i.LM(J6LR(P6Le1T3GJ6\�$$LTe1djJl/i.l/@6le1l3GJ6l�G�Ll�;i.l�$$Lq/�)y�%]7t/i.t�U6tR(P6tM(J6<�$$L<e1|/�4|3GJ6/i./�4/@63GJ6e1�$$L�G�4�/@6�/i.��U6��;i.�R(P6�M(J6�/i.�+H�M�e1��$$L�jJ��P6�>HmN��BsN�/�)�
xNa�%�NAgH�N�qH�N<�$*L��$
O�/�4�3GfI�/�4�3GfI�qH�NA}H,8a.eOa�HmO��-�;��-�;��H�OA
�OaSG�O�H�OaQ..2a�H�O��H�O��H�OtV(P6Y�H�)1�H�P)I~/) I�PQ2I�P9@I�P1MI~/1��P���))��P�_I�)��I�)Y�
2A_I�)1�3�P��#�PQ�I�P1��))��)��IQ���)��I�)y/�)Y�IQ1�I�P9��/I��)A�I�QA�I�Q)/�Q1A�Q�jJAi1��P6Ihi.I��//i.�Le1�K��	K��/�4��K�Q�TKw1�9>w1�!JjJ��KR�`K�0�pKj7��J�Q�xK�Q��Ki.��Ji.��KR�/�4��K�Q�TKw1�/�)XLTRYgLnRatL�RA�L�R��L�R��-�;a�L�R9�L�R9�L�RI/�)a/�R�
�RQ/i.a/�4a�;�Ra/�Ra�;S�*MSa�;�4aAM�4a�;e1Y/i.hM+Si�I�/imM�7i/�7a/i.+++T� �$�(�,�0�48D<D@eD�H�LP�T�X\�`"d�hxl	p�	tP
x|��R�R�s�D�D�e�����w�7�����;�����K�����C�
�����I�����M����{�-���� Y!"�"Q#$�$�%�% X&$
'(�',�(0F)8*<6*@o*D�*H�*L+P++TN+Xm+\�+`�+d�+h�+l ,pI,th,x�,|�,��,��,�!-�D-�c-�|-��-��-��-��-�.�B.��.��.��.��.��.��.��.��.��.��.��.��.��.��.��.��.��.��.�.�.//////  /$%/(*/,//0/44/89/<>/@C/DH/HM/LR/PW/T\/Xa/`j/do/ht/ly/p�/t�/x�/�j/�o/�t/�y/�1�1�1�1�1�1�o/�t/�j/�o/�t/�o/t/j/o/t/y/o/1 1(j/,o/0t/4�1dj/ho/lt/py/t1x1|1�1�1�j/�o/�t/�y/�1�1�1�1�1�j/�o/�t/�y/�111111333 3$3($3,)30.3433883<=3@B3DG3HL3LQ3PV3T[3X`3pj/to/xt/|y/�1�1�1�1�1�1�3�3�3�3�3�1�j/�o/�t/�1�1�)3 y/lj/po/tt/xy/|1�1�1�1�1�1�3�3�3�3�j/�o/�t/�1�j/�o/�t/�1�1<�8@�8D�8H�8L�8P�8T�8X�8\�8`�8d�8h9l9p9t9x9|9�9�$9�)9�.9�39�89�=9�B9�G9�L9�Q9�V9�[9�`9	:Q3:W:(:,W:0�;4�;8�;<�;@�;Do/Ht/L1P1T)3X�;\�8`�;d�;	h�;l�;p�;t?x�C|�C��C��C��C�?�o/�t/�1�1�1�y/��;�1��;�)3'{	o/.�?T.o/.�6T.�HT.�kS.�KS.cES.kKS.so/.{QS.�QS.�QS.�T.��S.��S.��S.��S.��S.��S��H�So/��H��1I��K�o/#�IK#�K���L#M�o/�so/#so/o/ o/�)CKL�)CKLzo/ zo/@zo/`zo/�zo/�zo/�zo/�zo/{o/�	o/ �	o/��S	o/@�S	o/`�o/��o/��o/�o/ �o/@�o/gTs~@(�I"ISIYInI~I�I�I�I�I�I�I�I�I�I�I�IJJJ%J1J@JIJPJ�J�J�J�J�J$K6K;KDK�K�K�K�K�K�K�K�K�K�K�K�K�K�K�K
LLL1LALVLvL�L�LM M%M4MIMaMsM�M�M�M�M�M�M�M�M�M�M�MNN5NGNPN^NgN�N�N�N�N�N�N�N�N�N�NOO2O>ODO_OrOzO�O�O�O�O�O�O�O�O�O�OPP
PPP*P4P;PBPIPPPXP`PePoP�P�P�P�P�P�P�PQQQ#Q-Q8QDQPQ]QiQqQzQ�Q�Q�Q�Q�Q�Q�QR$R3R=RKRtR}R�R�R�R�R�R�RSS#S;S
 "5B D$G&M(R)S*W+`,d.e/h0m1r2v3w4{6;�@�A�E�F�G�J�K�L�M�N�O�P�Q�R�S�V�W�X�Z�\�]�^�_�b�c�e�h�i�j�l�m�o�p�q�r�w�{���Y�) �.(�.��/��)��/>�0H�0Z�0c�)m�)r�)�)��)��/��)��0��/��/��/��)��)��0��)�0��)(n10s1@s1�0(�0�)�1��05�/>�0?@2ZE2r�)c�)�)��)��/�J2��)H�/��)Qs1`�/iO2d�/ys1�_2Z�0r�)c�)m�)�)��)��)��/��)��/��/>�0 i2�1(n10s1��/ i2�1� �2� 3�)m�) i2�1s"�3�"�3�"�30s1@s1�#4�#�1�#4m�)�)K�)"$�/+$�00s1(n1�#4�#�1(n10s1@s1�#4�#4@s1(n10s1�$�4(n10s1@s1�0(n1�#�10s1@s1�#4
%�4%s1%s1+%n1�%s1 i2�1�%�3�%�3 i2�1&�)�) i2�1�%�3�)m�)Z�0�&L5�&�/�&�)(n1�#�10s1@s1�#4(n1�#�10s1@s1�#40s1�#4(n10s1@s1�#�1�#4�%�6�#40s1@s1�#4�#�1(n1 i2�1�(�3�#�1�#�1(n10s1(n10s1})�)@s1�#�1�#�1�#�1�)�6�)�1p�/0*�)p�/ i2�1u*�0(n10s1�#�1�-�2�-s1�-s1�-8�#�1�#�1�#�1�#�1 i2�1�/�)�/�8�/�8m�)�)�/�)�/4�/�/�#4(n10s1@s1(n10s1@s1�#�1��)�#�10s1�#4�-s1�-s1�1�-8�2�/�2�/�2�1��)��/��/��/c�)m�)r�)>�0Z�0�)��0��)�5s1�5s1�9�G�0�G<s1�K
R�K�0	
 !"#!&#'%B'Y)c+d+e-f-}/~1�3�5�7�9�;�=�?�A�C�E�G�I�K�M�O�Q�S�U�W�Y�[�]�_�a�c�e�g�i�k�m�o�q�s�u�w�y�{�}�����
�����'�(�)�*�+�,�0�1�2�3�4�;�?�D�E�F�V�W�X�Y�Z�[�\�_�`�g�h�i�j�p�u�v�w�|�~����������������������������������������������������	��
�����������!�#�%')+-/1#3(5;7<9=;>=@?CADCEEKGXIZK[M`ObQdSeUfWkYs[w]x_a�c�e�g�i�k�m�o�q�s�u�w�y�{�}���	�����!�"�#�$�%�&�2�A�B�C�K�L�M�t�~�������������������������������������������������������&�)�ln~�	�2>
r~r|r��J��H��F��L��N��P��R�
^I^JtJ�JLLnL�L�L�L�L,M|M�M�M�MNN$N,N�N(OjP�Q�Q�QR!R+RfR8S�9;�9<�9=8�>H�?�(H[���:3UB�M
%$'&7698:8SQZYdckjljyx|{~}}�}�s���U�HU�Q��Q�GR+`R�`RUGR<Module>System.Xml.XPath.dllFXAssemblyThisAssemblyAssemblyRefResDescriptionAttributeSystem.Xml.XPathResCategoryAttributeResHResultsSystemXmlNodeOrderSystem.XmlXPathItemIXPathNavigableXPathNavigatorDebuggerDisplayProxyXPathExtensionsXPathNodeTypeXPathExceptionXPathNodeIteratorEnumeratorXmlSortOrderXmlCaseOrderXmlDataTypeXPathResultTypeXPathExpressionXPathNavigatorKeyComparerXPathNamespaceScopeXPathNavigatorReaderStateXmlEmptyNavigatorAstNodeMS.Internal.Xml.XPathAstTypeXPathAxisIteratorXPathChildIteratorXPathAncestorIteratorXPathDescendantIteratorFunctionFunctionTypeOperatorOpResetableIteratorQueryBaseAxisQueryCacheAxisQueryPreSiblingQueryQueryPropsXPathSelectionIteratorXPathArrayIteratorSortQuerySortKeyXPathSortComparerFilterVariableFollSiblingQueryAxisAxisTypeQueryBuilderFlagsPropsContextQueryAttributeQueryChildrenQueryDescendantBaseQueryDescendantQueryCacheOutputQueryXPathAncestorQueryDocumentOrderQueryParentQueryClonableStack`1ValueQueryGroupQueryFilterQueryNamespaceQueryCacheChildrenQueryEmptyQueryGroupNumericExprUnionExprExtensionQueryVariableQueryFunctionQueryCompiledXpathExprXsltContextSystem.Xml.XslUndefinedXsltContextXPathComparerHelperXPathSelfQueryOperandIteratorFilterOperandQueryXPathParserParamInfoAbsoluteQueryBooleanFunctionsNumberFunctionsStringFunctionsNodeFunctionsDescendantOverDescendantQueryIDQueryRootXPathScannerLexKindPrecedingQueryFollowingQueryMergeFilterQueryXPathEmptyIteratorXPathSingletonIteratorLogicalExprcmpXsltNodeSetBooleanExprForwardPositionQueryReversePositionQueryIXsltContextFunctionIXsltContextVariableXNodeNavigatorXPathEvaluatorExtensionsXPathConvertXmlReservedNsXmlCharTypeValidateNamesXmlExceptionHelperBufferBuilderBuffermscorlibObjectSystem.ComponentModelDescriptionAttributeCategoryAttributeEnumIXmlNamespaceResolverValueTypeSystemExceptionSystem.CollectionsIEnumerableIEnumeratorIEqualityComparerXmlReaderSystem.Collections.GenericIComparer`1TList`1XmlNamespaceManagerIComparerMulticastDelegateIXmlLineInfoVersionTitleDescriptionDefaultAliasCopyrightInformationalVersionDailyBuildNumberStrBuildRevisionStrDailyBuildNumberEcmaPublicKeyEcmaPublicKeyTokenEcmaPublicKeyFullSilverlightPublicKeySilverlightPublicKeyTokenSilverlightPublicKeyFullSilverlightPlatformPublicKeySilverlightPlatformPublicKeyTokenSilverlightPlatformPublicKeyFullPlatformPublicKeyPlatformPublicKeyTokenPlatformPublicKeyFullMscorlibSystemDataSystemDataOracleClientSystemCoreSystemNumericsSystemRuntimeRemotingSystemWindowsFormsSystemXmlMicrosoftPublicKeyMicrosoftPublicKeyTokenMicrosoftPublicKeyFullSharedLibPublicKeySharedLibPublicKeyTokenSharedLibPublicKeyFullSystemComponentModelDataAnnotationsSystemConfigurationSystemConfigurationInstallSystemDeploymentSystemDesignSystemDirectoryServicesSystemDrawingDesignSystemDrawingSystemEnterpriseServicesSystemManagementSystemMessagingSystemNetHttpSystemNetHttpWebRequestChannelSystemRuntimeSerializationFormattersSoapSystemSecuritySystemServiceModelWebSystemServiceProcessSystemWebSystemWebAbstractionsSystemWebDynamicDataSystemWebDynamicDataDesignSystemWebEntityDesignSystemWebExtensionsSystemWebExtensionsDesignSystemWebMobileSystemWebRegularExpressionsSystemWebRoutingSystemWebServicesWindowsBaseMicrosoftVisualStudioMicrosoftVisualStudioWindowsFormsVJSharpCodeProviderASPBrowserCapsPublicKeyASPBrowserCapsFactoryMicrosoftVSDesignerMicrosoftVisualStudioWebMicrosoftWebDesignMicrosoftVSDesignerMobileMicrosoftJScriptreplaced.ctorget_DescriptionGetLocalizedStringArgument_CreateNavigatorInvalidOperation_BadNodeTypeInvalidOperation_UnexpectedEvaluationNotSupported_MoveToIdSch_EnumFinishedSch_EnumNotStartedXmlUndefinedAliasXml_BadNameCharXml_BadStartNameCharXml_EmptyNameXml_InvalidOperationXml_UserExceptionXp_BadQueryObjectXp_CurrentNotAllowedXp_ExprExpectedXp_FunctionFailedXp_InvalidArgumentTypeXp_InvalidKeyPatternXp_InvalidNameXp_InvalidNumArgsXp_InvalidPatternXp_InvalidTokenXp_NoContextXp_NodeSetExpectedXp_NotSupportedXp_UnclosedStringXp_UndefFuncXp_UndefVarXp_UndefinedXsltContextXpn_BadPositionloaderSystem.ResourcesResourceManagerresourcesGetLoaderSystem.GlobalizationCultureInfoget_Cultureget_ResourcesGetStringGetObjectCultureResourcesConfigurationXmlXmlSchemaXmlXsltXmlXPathDataDataDeletedRowInaccessibleDataDuplicateNameDataInRowChangingEventDataInvalidConstraintDataMissingPrimaryKeyDataNoNullAllowedDataReadOnlyDataRowNotInTableDataVersionNotFoundDataConstraintStrongTypingSqlTypeSqlNullValueSqlTruncateAdapterMappingDataAdapterDBConcurrencyOperationAbortedInvalidUdtMetadataInvalidQueryCommandCompilationCommandExecutionSqlExceptionOdbcExceptionOracleExceptionConnectionPlanExceptionNteBadKeySetWin32AccessDeniedWin32InvalidHandleLicenseInternalBufferOverflowServiceControllerTimeoutInstallEFailvalue__BeforeAfterSameUnknownget_IsNodeget_ValueIsNodeValueCreateNavigatorAllMaskNoAttrNmspMaskTextMaskcomparerToStringSetValueXmlNameTableget_NameTableLookupNamespaceLookupPrefixIDictionary`2XmlNamespaceScopeGetNamespacesInScopeget_NavigatorComparerCloneget_NodeTypeget_LocalNameget_Nameget_NamespaceURIget_Prefixget_BaseURIget_IsEmptyElementget_XmlLangReadSubtreeXmlWriterWriteSubtreeget_UnderlyingObjectget_HasAttributesGetAttributeMoveToAttributeMoveToFirstAttributeMoveToNextAttributeGetNamespaceMoveToNamespaceMoveToFirstNamespaceMoveToNextNamespaceMoveToNextMoveToPreviousMoveToFirstMoveToFirstChildMoveToParentMoveToRootMoveToMoveToIdMoveToChildMoveToFollowingget_HasChildrenIsSamePositionIsDescendantComparePositionCompileSelectSingleNodeSelectEvaluateMatchesSelectChildrenSelectAncestorsSelectDescendantsget_CanEditPrependChildAppendChildInsertAfterInsertBeforeCreateAttributesReplaceRangeReplaceSelfget_OuterXmlset_OuterXmlget_InnerXmlset_InnerXmlDeleteRangeDeleteSelfPrependChildElementAppendChildElementInsertElementBeforeInsertElementAfterCreateAttributeMoveToNonDescendantget_IndexInParentNodeTypeLetterUniqueIdTblget_UniqueIdCompileMatchPatternGetDepthCompareSiblingsGetNamespacesContentKindMasksGetContentKindMaskGetKindMaskIsTextIsValidChildTypeIsValidSiblingTypeCreateReaderCreateContextReaderBuildSubtreeget_debuggerDisplayProxyNameTableNavigatorComparerNodeTypeLocalNameNameNamespaceURIPrefixBaseURIIsEmptyElementXmlLangUnderlyingObjectHasAttributesHasChildrenCanEditOuterXmlInnerXmlIndexInParentUniqueIddebuggerDisplayProxynavWriteLocalNamespacesWriteNodeElementAttributeNamespaceTextSignificantWhitespaceWhitespaceProcessingInstructionCommentAllresargsmessageExceptionCreateCreateMessageget_MessageMessagecountMoveNextget_Currentget_CurrentPositionget_CountGetEnumeratorCurrentCurrentPositionCountoriginalcurrentiterationStartedResetnodeIteratorAscendingDescendingNoneUpperFirstLowerFirstNumberStringBooleanNavigatorAnyErrorget_ExpressionAddSortSetContextget_ReturnTypePrintQueryExpressionReturnTypeSystem.Collections.IEqualityComparer.EqualsEqualsSystem.Collections.IEqualityComparer.GetHashCodeGetHashCodeExcludeXmlLocalspacenavToReaddepthstateXmlNodeTypenodeTypeattrCountreadEntireDocumentlineInfosavedStateconvertFromXPathNodeTypeToXmlNodeTypeget_IsReadingSystem.Xml.IXmlNamespaceResolver.GetNamespacesInScopeSystem.Xml.IXmlNamespaceResolver.LookupNamespaceSystem.Xml.IXmlNamespaceResolver.LookupPrefixXmlReaderSettingsget_SettingsXmlSpaceget_XmlSpaceget_HasValueGetElemNavMoveToAttrget_AttributeCountGetNamespaceByIndexMoveToElementget_EOFReadStateget_ReadStateResolveEntityReadAttributeValueget_CanReadBinaryContentReadContentAsBase64ReadContentAsBinHexReadElementContentAsBase64ReadElementContentAsBinHexget_DepthReadCloseSetEOFIsReadingSettingsHasValueAttributeCountEOFCanReadBinaryContentDepthInitialContentEndElementAttrValInReadBinaryClosedSystem.Runtime.CompilerServicesIsVolatilesingletonget_SingletonSingletonget_TypeTypeConstantOperandtypenameuripositionmatchSelffirstget_MatcheslevelfunctionTypeargumentListprefixget_TypeOfFunctionget_ArgumentListReturnTypesTypeOfFunctionArgumentListFuncLastFuncPositionFuncCountFuncIDFuncLocalNameFuncNameSpaceUriFuncNameFuncStringFuncBooleanFuncNumberFuncTrueFuncFalseFuncNotFuncConcatFuncStartsWithFuncContainsFuncSubstringBeforeFuncSubstringAfterFuncSubstringFuncStringLengthFuncNormalizeFuncTranslateFuncLangFuncSumFuncFloorFuncCeilingFuncRoundFuncUserDefinedinvertOpInvertOperatoropTypeopnd1opnd2get_OperatorTypeget_Operand1get_Operand2OperatorTypeOperand1Operand2INVALIDORANDEQNELTLEGTGEPLUSMINUSMULDIVMODUNIONResetCountMoveToPositionXPathResultType_NavigatorSetXsltContextAdvanceMatchNodeget_XsltDefaultPriorityget_StaticTypeget_PropertiesInsertGetMedianCompareNodesAssertDODAssertQueryGetXPathTypeXsltDefaultPriorityStaticTypePropertiesqyInputnameTestnsUritypeTestcurrentNodeget_Namespaceget_NameTestget_TypeTestmatchesNameTestTypeTestoutputBufferNotVisitedPositionCachedReverseMergequeryIList`1listindexget_AsListAsListresultsBuildResultsListnumKeyskeysoriginalPositionnodeget_Itemset_Itemget_NumKeysget_OriginalPositionget_NodeItemNumKeysOriginalPositionNodeminSizeexpressionscomparersnumSortsget_NumSortsSystem.Collections.Generic.IComparer<MS.Internal.Xml.XPath.SortKey>.CompareCompareNumSortsinputconditionget_Inputget_ConditionInputConditionlocalnameget_LocalnameLocalnameelementStkparentStknextInputVisitedFetchInputaxisTypeabbrAxisset_Inputget_TypeOfAxisget_AbbrAxisurnget_Urnset_UrnTypeOfAxisAbbrAxisUrnAncestorAncestorOrSelfChildDescendantDescendantOrSelfFollowingFollowingSiblingParentPrecedingPrecedingSiblingSelfallowVarallowKeyallowCurrentneedContextfirstInputProcessAxisCanBeNumberProcessFilterProcessOperatorProcessVariableProcessFunctionProcessArgumentsProcessNodeBuildBuildPatternQuerySmartDescPosFilterHasPositionHasLastNonFlatcontextNodeonAttributeiteratorIEnumerable`1PushPopPeekcondnoPositionEvaluatePredicateonNamespacepositionStkneedInputDecideNextNodeGetNextInputgroupNodeget_GroupNodeGroupNodeopGetValueqy1qy2advance1advance2nextNodeProcessSamePositionProcessBeforePositionProcessAfterPositionxsltContextqueryIteratorProcessResultget_QNameQNamevariablefunctionexprget_QueryTreeCheckErrorsQueryTreeResolveVariableResolveFunctionget_WhitespacePreserveWhitespaceCompareDocumentnsResolverget_DefaultNamespaceDefaultNamespaceordercaseOrdercinfodataTypevalget_OperandValueOperandValueinnerIteratorscannerParseXPathExpresionParseXPathPatternParseExpresionParseOrExprParseAndExprParseEqualityExprParseRelationalExprParseAdditiveExprParseMultiplicativeExprParseUnaryExprParseUnionExprIsNodeTypeParsePathExprParseFilterExprParsePredicateParseLocationPathParseRelativeLocationPathIsStepParseStepParseNodeTestIsPrimaryExprParsePrimaryExprParseMethodParsePatternParseLocationPathPatternParseIdKeyPatternParseRelativePathPatternParseStepPatternCheckTokenPassTokenNextLexTestOpCheckNodeSettemparray1temparray2temparray3temparray4temparray5temparray6temparray7temparray8temparray9Dictionary`2functionTableCreateFunctionTableAxesTableCreateAxesTableGetAxisftypeminargsmaxargsargTypesget_FTypeget_Minargsget_Maxargsget_ArgTypesFTypeMinargsMaxargsArgTypesargfuncTypetoBooleanNotLangSumFloorCeilingRoundargListtoStringConcatStartsWithCompareInfocompareInfoContainsSubstringBeforeSubstringAfterSubstringStringLengthNormalizeTranslateEvaluateArgMoveUpUntillNextProcessIdsxpathExprxpathExprIndexkindcurrentCharstringValuenumberValuecanBeFunctionxmlCharTypeget_SourceTextget_CurerntCharNextCharPeekNextCharget_Kindget_StringValueget_NumberValueget_CanBeFunctionSkipSpaceScanNumberScanFractionScanStringScanNameSourceTextCurerntCharKindStringValueNumberValueCanBeFunctionCommaSlashAtDotLParensRParensLBracketRBracketStarPlusMinusEqLtGtBangDollarAposQuoteUnionNeLeGeAndOrDotDotSlashSlashAxeEofworkIteratorancestorStkchildInstanceCompXsltECompXsltOcmpQueryQueryEcmpQueryQueryOcmpQueryNumbercmpQueryStringEcmpQueryStringOcmpRtfQueryEcmpRtfQueryOcmpQueryBoolEcmpQueryBoolOcmpBoolBoolEcmpBoolBoolOcmpBoolNumberEcmpBoolNumberOcmpBoolStringEcmpRtfBoolEcmpBoolStringOcmpRtfBoolOcmpNumberNumbercmpNumberNumberOcmpStringNumbercmpRtfNumbercmpStringStringEcmpRtfStringEcmpRtfRtfEcmpStringStringOcmpRtfStringOcmpRtfRtfORtfInvokeIAsyncResultAsyncCallbackBeginInvokeEndInvokeopndisOrget_IsLocalget_IsParamget_VariableTypeIsLocalIsParamVariableTypeDocumentContentMaskxmlPrefixNamespacexmlnsPrefixNamespaceElementContentMasksSystem.Xml.LinqXAttributeXmlNamespaceDeclarationsourceXElementparentnameTableXNodeGetLocalNameGetNamespaceURIXNamespaceGetPrefixOfNamespaceGetPrefixSystem.Xml.IXmlLineInfo.HasLineInfoHasLineInfoSystem.Xml.IXmlLineInfo.get_LineNumberget_LineNumberSystem.Xml.IXmlLineInfo.get_LinePositionget_LinePositionXTextCollectTextCreateNameTableXContainerIsContentIsXmlNamespaceDeclarationGetElementContentMaskGetFirstNamespaceDeclarationGlobalGetFirstNamespaceDeclarationLocalGetNextNamespaceDeclarationGlobalGetNextNamespaceDeclarationLocalGetXmlNamespaceDeclarationHasNamespaceDeclarationInScopeSystem.Xml.IXmlLineInfo.LineNumberSystem.Xml.IXmlLineInfo.LinePositionEvaluateIteratorXPathEvaluateXPathSelectElementXPathSelectElementsXObjectGetXContainerParentCalibrateTextEscapeValueForDebuggerDisplayWhitespaceCharsTrimStringToXPathDoubleXPathRoundSplitStringNsXmlNsXmlNsSurHighStartSurHighEndSurLowStartSurLowEndSurMaskfWhitespacefLetterfNCStartNameSCfNCNameSCfCharDatafNCNameXml4efTextfAttrValues_PublicIdBitmapCharPropertiesSizes_Whitespaces_NCStartNames_NCNames_CharDatas_PublicIDs_Texts_AttrValues_LetterXml4es_NCNameXml4es_Lockget_StaticLocks_CharPropertiescharPropertiesInitInstanceSetPropertiesget_InstanceIsWhiteSpaceIsNCNameSingleCharIsStartNCNameSingleCharIsNameSingleCharIsStartNameSingleCharIsCharDataIsPubidCharIsTextCharIsAttributeValueCharIsLetterIsNCNameCharXml4eIsStartNCNameCharXml4eIsNameCharXml4eIsStartNameCharXml4eIsDigitIsHighSurrogateIsLowSurrogateIsSurrogateCombineSurrogateCharSplitSurrogateCharIsOnlyWhitespaceIsOnlyWhitespaceWithPosIsOnlyCharDataIsOnlyDigitsIsPublicIdInRangeStaticLockParseNmtokenNoNamespacesIsNmtokenNoNamespacesParseNameNoNamespacesIsNameNoNamespacesParseNCNameParseNCNameThrowParseNCNameInternalParseQNameParseQNameThrowThrowInvalidNameSplitQNameNCNamesCheckLocalNameCheckPrefixMappingAllExceptNCNamesAllExceptPrefixMappingBuildCharExceptionArgsBufferSizeInitialBufferArrayLengthMaxStringBuilderLengthDefaultSBCapacitySystem.TextStringBuilderstringBuilderbuffersbuffersCountlastBufferlastBufferIndexlengthget_Lengthset_LengthAppendClearClearBuffersCreateBuffersAppendHelperAddBufferRecycleSetLengthwstrcpyLengthbufferWeakReferencerecycledBufferdescriptioncategoryvalueParamArrayAttributeusedFallbackSystem.Runtime.InteropServicesOutAttributenamespaceURIscopewriterlocalNamenamespaceScopeotheridendxpathresolverexpressioncontextlastSiblingToReplacenewNodenewChildnewSiblinglastSiblingToDeleten1n2xmlfromCurrentNodereadernsNavnavigatordefattrinnerExceptionarg2innerlangnsManagerwobj1obj2objtypxlinamespaceNameitposlreevalQuerysizeixynodetyperootflagspropsqqyParentcapacitycollectionqyquery1query2resultres1res2tabledummybaseUrinextbaseUrixpathExpresionxpathPatternscanerlexKindtnumberstrnumbmovedval1val2oobjectmethodcallbackdocContextattrnsncarangeschlowCharhighCharcombinedCharstartPoslencharsstartsoffsetthrowOnErrorcolonOffsetoffsetStartCharoffsetBadCharlnamedatainvCharIndexinvCharnextCharpSourcebufnewLengthdmemsmemcharCountComVisibleAttributeCLSCompliantAttributeSystem.SecuritySecurityTransparentAttributeSystem.ReflectionAssemblyTitleAttributeAssemblyDescriptionAttributeAssemblyDefaultAliasAttributeAssemblyCompanyAttributeAssemblyProductAttributeAssemblyCopyrightAttributeAssemblyVersionAttributeAssemblyFileVersionAttributeAssemblyInformationalVersionAttributeSatelliteContractVersionAttributeNeutralResourcesLanguageAttributeAssemblyDelaySignAttributeAssemblyKeyFileAttributeSystem.Security.PermissionsSecurityPermissionAttributeSecurityActionSystem.DiagnosticsDebuggableAttributeDebuggingModesCompilationRelaxationsAttributeRuntimeCompatibilityAttributeSystem.CoreExtensionAttributeAttributeUsageAttributeAttributeTargetsset_DescriptionValueGetTypeAssemblyget_AssemblySystem.ThreadingInterlockedCompareExchangeget_CurrentCultureIFormatProviderFormat.cctorDebuggerDisplayAttributeNotSupportedExceptionEmptyop_EqualityInvalidOperationExceptionArgumentNullExceptionop_Inequalityget_InvariantCultureSystem.IOStringWriterXmlWriterSettingsset_Indentset_OmitXmlDeclarationConformanceLevelset_ConformanceLevelTextWriterWriteStartElementWriteStringWriteEndElementWriteStartAttributeWriteEndAttributeGetKeyValuePair`2IEnumerator`1get_KeyAddNamespaceIDisposableDisposeXmlParserContextset_IgnoreWhitespaceStringReaderTextReaderArgumentExceptionWriteAttributeStringWriteFullEndElementWriteCommentWriteProcessingInstructionChar<PrivateImplementationDetails>{35A34D83-62A7-4B45-B5C3-60CEC80716E8}CompilerGeneratedAttribute__StaticArrayInitTypeSize=20$$method0x6000418-1RuntimeHelpersArrayRuntimeFieldHandleInitializeArray__StaticArrayInitTypeSize=64$$method0x6000418-2Int32__StaticArrayInitTypeSize=40$$method0x6000418-3StructLayoutAttributeLayoutKindWriteWhitespaceset_HResultMissingManifestResourceExceptionset_NameTableset_CheckCharactersAddArgumentOutOfRangeExceptionCompareOrdinalConditionalAttributeDoubleMemberInfoWriteElementStringRuntimeTypeHandleGetTypeFromHandleStack`1ICollection`1SortDefaultMemberAttributeRemoveAtInt16Int64UInt32UInt16UInt64SingleDecimalop_ExplicitThreadget_CurrentThreadConvertCompareOptionsCompareToTryGetValueIsNaNStringComparisonget_CharsMathNumberFormatInfoget_InvariantInfoIndexOfget_CompareInfoToInt32get_BaseUriget_FirstAttributeget_IsNamespaceDeclarationget_NextAttributeget_FirstNodeget_NextNodeget_IsEmptyXNameget_NamespaceNameXProcessingInstructionget_Targetget_LastNodeXDocumentget_RootXCommentget_Dataget_Parentget_LastAttributeget_XmlnsGetName$$method0x6000420-1<EvaluateIterator>d__0`1System.Collections.Generic.IEnumerable<T>.GetEnumeratorSystem.Collections.IEnumerable.GetEnumerator<>2__currentSystem.Collections.Generic.IEnumerator<T>.get_CurrentSystem.Collections.IEnumerator.ResetSystem.IDisposable.Dispose<>1__state<>l__initialThreadIdSystem.Collections.IEnumerator.get_Current<>3__result<navigator>5__1<r>5__2<t>5__3<>4__this<>7__wrap4<>7__wrap5<>m__Finally6System.Collections.Generic.IEnumerator<T>.CurrentSystem.Collections.IEnumerator.CurrentDebuggerHiddenAttributeget_ManagedThreadIdXDocumentTypeSystem.LinqEnumerableFirstOrDefaultget_DocumentTrimNumberStylesTryParseToDoubleFormatExceptionOverflowExceptionStringSplitOptionsSplit$$method0x600042a-1MonitorEnterByteExitXmlExceptionSecuritySafeCriticalAttributeget_OffsetToStringDataset_CapacitySecurityCriticalAttributeCopyset_TargetUnverifiableCodeAttributeSystem.Xml.XPath.resources!System.Xml.XPath...xmlIhttp://www.w3.org/XML/1998/namespacexmlns;http://www.w3.org/2000/xmlns/	langXpn_BadPosition
writer]Microsoft.VisualStudio.Modeling.StoreNavigator%Xp_NodeSetExpected#Xp_BadQueryObject#Xp_InvalidPatternnewNode=""xmlns="
xmlns:valuenewChildnewSibling)Xml_InvalidOperation
reader, Name=", Value="navigator#Xml_UserExceptionUNKNOWN()!Sch_EnumFinished%Sch_EnumNotStartedPosition=, Current=	nullobjspacedefaultpreservelocalNameindex	namenamespaceURIKSystem.Xml.DataDocumentXPathNavigatornodeType#XPathSortComparerG... PrintTree() not implemented ...Xp_NotSupported)Xp_InvalidKeyPatterncurrent)Xp_CurrentNotAllowedkey	selfyespositionop:Xp_NoContextXp_UndefVarXp_UndefFunc#Xp_FunctionFailed#XmlUndefinedAlias/Xp_UndefinedXsltContextXp_InvalidTokenoranddivmod	node	text-processing-instructioncomment*#Xp_InvalidNumArgs-Xp_InvalidArgumentTypeid	lastnamespace-urilocal-namecount
string
concatstarts-withcontains!substring-beforesubstring-aftersubstringstring-lengthnormalize-spacetranslatebooleannot	truefalse
numbersumfloorceilingroundancestor!ancestor-or-selfattributechilddescendant%descendant-or-selffollowing#following-siblingnamespace
parentpreceding#preceding-siblingRXp_ExprExpectedXp_InvalidName#Xp_UnclosedString+NotSupported_MoveToId9InvalidOperation_BadNodeTypeKInvalidOperation_UnexpectedEvaluation1Argument_CreateNavigator\"\r\n\t
	


  �1AZaz�����14>AHJ~�������P�������������������������OQ\^�������������1VYYa�����!:AJq�����������	9	=	=	X	a	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	





(
*
0
2
3
5
6
8
9
Y
\
^
^
r
t
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(*02369==\]_a��������������������(*359`a��������������




(
*
9
`
a
.0023@E��������������������������������@GIi����		<<>>@@LLNNPPTUYY_acceeggiimnrsuu����������������������� EHMPWYY[[]]_}��������������������&!&!*!+!.!.!�!�!00!0)0A0�0�0�01,1N������5AZ__az�����14>AHJ~�������P�������������������������OQ\^�������������1VYYa�����!:AJq�����������	9	=	=	X	a	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	





(
*
0
2
3
5
6
8
9
Y
\
^
^
r
t
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(*02369==\]_a��������������������(*359`a��������������




(
*
9
`
a
.0023@E��������������������������������@GIi����		<<>>@@LLNNPPTUYY_acceeggiimnrsuu����������������������� EHMPWYY[[]]_}��������������������&!&!*!+!.!.!�!�!00!0)0A0�0�0�01,1N������}-.09AZ__az�������14>AHJ~�������P�����E`a��������������������OQ\^���������������1VYYa�����������������!:@R`ip�������������			9	<	M	Q	T	X	c	f	o	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	







(
*
0
2
3
5
6
8
9
<
<
>
B
G
H
K
M
Y
\
^
^
f
t
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(*02369<CGHKMVW\]_afo��������������������������������(*359>DFHJMUV`afo��������������������������






(
*
9
>
C
F
H
J
M
W
W
`
a
f
o
.0:@NPY������������������������������������ )557799>GIiq�����������������		<<>>@@LLNNPPTUYY_acceeggiimnrsuu����������������������� EHMPWYY[[]]_}��������������������� � � � &!&!*!+!.!.!�!�!0000!0/01050A0�0�0�0�0�0�0�0�0�01,1N�����	


 ��� %';=\^��� !#%(;==?���$�����������Xml_EmptyName)Xml_BadStartNameCharXml_BadNameChar0x{0:X2}.start�M�5�bEK��`���|�׾�y�1��55.0.5.0(System.Xml.XPath.dll\� Microsoft Corporation.  All rights reserved.5.0.61118.00
6111800�� b77a5c561934e089@00000000000000000400000000000000 31bf3856ad364e35��0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9 7cec85d7bea7798e��00240000048000009400000006020000002400005253413100040000010001008D56C76F9E8649383049F383C44BE0EC204181822A6C31CF5EB7EF486944D032188EA1D3920763712CCB12D75FB77E9811149E6148E5D32FBAAB37611C1878DDC19E20EF135D0CB2CFF2BFEC3D115810C3D9069638FE4BE215DBF795861920E5AB6F7DB2E2CEEF136AC23D5DD2BF031700AEC232F6C6B1C785B4305C123B37AB��mscorlib, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e��System.Data, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089��System.Data.OracleClient, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089��System, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e��System.Core, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e��System.Numerics, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e��System.Runtime.Remoting, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089��System.Windows.Forms, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089��System.Xml, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 b03f5f7f11d50a3a��002400000480000094000000060200000024000052534131000400000100010007D1FA57C4AED9F0A32E84AA0FAEFD0DE9E8FD6AEC8F87FB03766C834C99921EB23BE79AD9D5DCC1DD9AD236132102900B723CF980957FC4E177108FC607774F29E8320E92EA05ECE4E821C0A5EFE8F1645C4C0C93C1AB99285D622CAA652C1DFAD63D745D6F2DE5F17E5EAF0FC4963D261C8A12436518206DC093344D5AD293��System.ComponentModel.DataAnnotations, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Configuration, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Configuration.Install, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Deployment, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Design, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.DirectoryServices, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Drawing.Design, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Drawing, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.EnterpriseServices, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Management, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Messaging, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Net.Http, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Net.Http.WebRequestChannel, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Runtime.Serialization.Formatters.Soap, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Security, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.ServiceModel.Web, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.ServiceProcess, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Web, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Web.Abstractions, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Web.DynamicData, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Web.DynamicData.Design, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Web.Entity.Design, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089��System.Web.Extensions, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Web.Extensions.Design, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Web.Mobile, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Web.RegularExpressions, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��System.Web.Routing, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��System.Web.Services, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��WindowsBase, Version=5.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��Microsoft.VisualStudio, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��Microsoft.VisualStudio.Windows.Forms, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��VJSharpCodeProvider, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a b7bd7678b977bd8f��ASP.BrowserCapsFactory, Version=5.0.5.0, Culture=neutral, PublicKeyToken=b7bd7678b977bd8f��Microsoft.VSDesigner, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��Microsoft.VisualStudio.Web, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��Microsoft.Web.Design.Client, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��Microsoft.VSDesigner.Mobile, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a��Microsoft.JScript, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a  ( 0Argument_CreateNavigator8InvalidOperation_BadNodeTypeJInvalidOperation_UnexpectedEvaluation*NotSupported_MoveToId Sch_EnumFinished$Sch_EnumNotStarted"XmlUndefinedAliasXml_BadNameChar(Xml_BadStartNameCharXml_EmptyName(Xml_InvalidOperation"Xml_UserException"Xp_BadQueryObject(Xp_CurrentNotAllowedXp_ExprExpected"Xp_FunctionFailed,Xp_InvalidArgumentType(Xp_InvalidKeyPatternXp_InvalidName"Xp_InvalidNumArgs"Xp_InvalidPatternXp_InvalidTokenXp_NoContext$Xp_NodeSetExpectedXp_NotSupported"Xp_UnclosedStringXp_UndefFuncXp_UndefVar.Xp_UndefinedXsltContextXpn_BadPositionI MIMI�@�A�B�C� �!�"�#�$�%�&�'�(�)�*�+�0�1�2�3�4�5�6�7�9�:�;�<��8�=�	�������@�$ ( 0����pd Q
 UY) < - ]     h 0 < 0 <0 $0 ` 0 0 0` D D D`   ` `D ` D< D D< D ] ]0 - 0  	`0 $009<< - -](Q)(<((	0]0]0<	 a@@@@a  a D  %(0(D DPTX\ = PTX ` 9  \`(\  h
spacepeEee<l0 0E i e m 0 00  q (i(e(m(quttt |(|| 0 0< 0 �� 0< 0 �� �� ����5 ��5
 5 �� ��x �� 5\(��(5

��������x
 ��xx �� x(��(x ��  �� �H D 00 
 ������DD00 500$00 500�� \(
(����
 ��< ��50 �� �� 050�� 0�� ��y0	 y0 �� y0(y05���� �� ��= 0  (��=  ��	 ����  �� xx �0 ���� ��x< ��x x ��(���� �������� �� �������� ������ ���� ������ 5��5�� ��x���� ��x �� ������ �� �� �� ��< �� �� � ��< � � �	 }  	 � � �
 ���� � ��(�� � � �$ ������ �0
��

	 ���� �4 000�H�� �8 �� �<y���� 5�� �@ �� ��  ��
 ��\ M
 PTX  �T 
 D �\ �� ��x xx���� xx��< �� \
���h���h
�������� ���� \ ��\(\ �l	 ���� �p
 D �t

 
D
 ��y�� �x
 D�� 0D ��< �� �� 0��
��  ��((��,/@.()[]*+-=<>!$'"|NLGAODSnsdaE �� �� ���� �� ����������

��  �� ������ �� �� �� ��
 �H0 �H�Hhttp://www.w3.org/XML/1998/namespace:http://www.w3.org/2000/xmlns/1�8V�6N5����Q ��Q ��	 ������Q	����	����������������	����
0��0}D0��	0��Q��	��	��������
}����}������������


������� �$�����������		


  �4AZ__az�����14>AHJ~�������P�������������������������OQ\^�������������1VYYa�����!:AJq�����������	9	=	=	X	a	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	





(
*
0
2
3
5
6
8
9
Y
\
^
^
r
t
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(*02369==\]_a��������������������(*359`a��������������




(
*
9
`
a
.0023@E��������������������������������@GIi����		<<>>@@LLNNPPTUYY_acceeggiimnrsuu����������������������� EHMPWYY[[]]_}��������������������&!&!*!+!.!.!�!�!00!0)0A0�0�0�01,1N����ׄ|-.09AZ__az�������14>AHJ~�������P�����E`a��������������������OQ\^���������������1VYYa�����������������!:@R`ip�������������			9	<	M	Q	T	X	c	f	o	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	







(
*
0
2
3
5
6
8
9
<
<
>
B
G
H
K
M
Y
\
^
^
f
t
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(*02369<CGHKMVW\]_afo��������������������������������(*359>DFHJMUV`afo��������������������������






(
*
9
>
C
F
H
J
M
W
W
`
a
f
o
.0:@NPY������������������������������������ )557799>GIiq�����������������		<<>>@@LLNNPPTUYY_acceeggiimnrsuu����������������������� EHMPWYY[[]]_}��������������������� � � � &!&!*!+!.!.!�!�!0000!0/01050A0�0�0�0�0�0�0�0�0�01,1N�����	


 ���$



 !#%';==?Z__az %';=\^��� !#%(;==?����0AZaz�����14>AHJ~�������P�������������������������OQ\^�������������1VYYa�����!:AJq�����������	9	=	=	X	a	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	





(
*
0
2
3
5
6
8
9
Y
\
^
^
r
t
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
(*02369==\]_a��������������������(*359`a��������������




(
*
9
`
a
.0023@E��������������������������������@GIi����		<<>>@@LLNNPPTUYY_acceeggiimnrsuu����������������������� EHMPWYY[[]]_}��������������������&!&!*!+!.!.!�!�!00!0)0A0�0�0�01,1N�����u ��  ��������     ���� � �
��$��$RSA1����g�w:�މ8���e� `Y>�Ēe���?�?�1��3��`!g-��1���
�/%�}�o��Y���5�L9�EC��;�&=����o��GP�\d��E��k*+G��e+��]� �!� �% �) �)
 M 	�5 M{debuggerDisplayProxy}00�� <0��<0<<	0<<00000D	�D��	�D��-<] �5 �Q
]�U�M�I�M]�I�M]<0<] 0	< ��0��	��<< Q}�Y	 �]�]�Y�Y 9U�Y�]�Y<<<<<
 Q9m-�mi�e
09�ei-	qe��	�������{ToString()} ��
<<<?:Position={CurrentPosition}, Current={debuggerDisplayProxy} �� ����4	���D0000Ei00p0p0<000pe5\����50  	$$	$0
DEBUG00�%����050��0000C>Position={CurrentPosition}, Current={debuggerDisplayProxy, nq}��0y0}05��	 1	0��	Item��=�����0������������	�������������������������5��5������|�������0�`
��0��00\�5��00$
��	��D,\����y����}���]����\�]��a
���]�������H�� M�5
M�� 
	

X
���dxxx��xxx��<����x��	���h 
5�hxx\
x���� 
5�h���h	����������\\\\\\\\�� �� 0\
0
�� �5�� ��


���� 
�� ��
00���|	00\�50��
����	����
��
����
������



��4�������������������������� ������ �������� ����������e �� ��
���� ��
����e��������	����
����h��������������������������h��������������EQ�������� �� ��
�� ������
0}�]����%�a(�	��	�	��
����}
��}�� ������	�� �
�5

�5

	 �
��  �5	 ��E  ��EE����	��System.Xml.XPath.dllMicrosoft CorporationMicrosoft® .NET Framework4/© Microsoft Corporation.  All rights reserved.5.0.61118.005.0.5.0
en-US0+f:\dd\Tools\devdiv\silverlightpublickey.snkTWrapNonExceptionThrows��.��System.Security.Permissions.SecurityPermissionAttribute, mscorlib, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798eTSkipVerification���N-�E�'RSDS`N��_r@��۰�System.Xml.XPath.pdbXFnF `F_CorDllMainmscoree.dll�% �a�0�	HX`��4VS_VERSION_INFO������?VStringFileInfo2040904B0LCompanyNameMicrosoft CorporationFFileDescription.NET Frameworkj%FileVersion5.0.61118.00 (SL_V5_RTW.061118-0000)JInternalNameSystem.Xml.XPath.dll�/LegalCopyright� Microsoft Corporation.  All rights reserved.ROriginalFilenameSystem.Xml.XPath.dllNProductNameMicrosoft� Silverlight>
ProductVersion5.0.61118.004CommentsFlavor=Retail2	PrivateBuildDDBLD656DVarFileInfo$Translation	�@�6`0�O	*�H��
��@0�<10	+0h
+�7�Z0X03
+�70%� ��<<<Obsolete>>>0!0	+��6H��Vޑݕ�4a�·�Q��10�`0�L�
.��P�\��0	+0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority0
070822223102Z
120825070000Z0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Code Signing PCA0�"0
	*�H��
�0�
��y}�]�E9�4�1�%5Iw����Eq��F�Ԍ�kLRb��M�Il/$>e��#�H�u�E���P�%+��
#�A$�b��E��J�ͳ/"�J-|o�;�99ݽ)�f;-2��'H��l�����c��\������򸔣�8�P�'�N�0�=��=����l9�.4��.�
}b�xf��s
����� �O�c�,�2E�J�;PS�fQy����V>��P�n�5�{$�Rf=�N�+~3n�Gў�J�n�����S���0��0U%0
+0��U��0���[�p�ir�#Q~�M��ˡr0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority���<<��>�c��@0U�0�0U��vp[����N�QD.�Dc�0U�0	+�{��~J&�μNt�X't*u����L�xM����i��|�C�ʇ�S�Ÿ�Vo�cD�D�Ț���
����)}��s���9�=�j�8m҈�#����i	������4�|�.�)��Bk(q�8��
�]hͽ�Akf�����4��|z���B�{������
�p֒�O�8�|-�=�4b7��j#��\c��Z�9�`�U�3�;����_��,���˫� ��0� 
*�R�A�^0�(i��p��΀Brv0�z0�b�
a��0
	*�H��
0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Code Signing PCA0
110221205312Z
120521205312Z0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1
0UMOPR10UMicrosoft Corporation0�"0
	*�H��
�0�
��qt�ۜ/��c�����p��G*��Z��M�;�!��}|?��v%:ܠO �r�Cq�l����%���]�7�.ū�`q��'�3��֓�U˃����ca�����Fc7�<W�H S��X���ʶFl
�:Φ��ݪ�p�[���?�٤��n����:��J�,��Av	�lg �1�>k�@��p0�0羌�/�Ԇ?Z��h��|�JnYC H����E��Lb΢��%�б��${�|�\N�g����0��0U%0
+0U�r��b_ݣt�_�A�[C&0U��0U#0���vp[����N�QD.�Dc�0DU=0;09�7�5�3http://crl.microsoft.com/pki/crl/products/CSPCA.crl0H+<0:08+0�,http://www.microsoft.com/pki/certs/CSPCA.crt0
	*�H��
�``'�|0IGA7<^u��6H�,X��|�������m��0�!cAF�ׯ(K�6}@T`�b��i�_Ň��|��Y}ۈ�wx�$�d�NQ�D(�,T(r�=,�'oѥa��b:�N/�g}�cC?;��z�x@��x· ���`�R\v�x�cuk���F��YR�{������,~0�1K��Z��x��~`�
�1�r�>g�8�8�9s�;�4߃Ҝ����d_��.�2%vi%�Ս5#��%D0��0���j�O�%��EXzg�0
	*�H��
0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority0
060916010447Z
190915070000Z0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Timestamping PCA0�"0
	*�H��
�0�
��7n���BJq��H>S����,2�ORȃ�>3�I1�(��d�P���K���u��Ǩծipfx'f趷���Y")/�@�Vv�mdmJT���޿��ǀ�L7����VhG��v\/}�%�V[jc��|<��%M9wt]�\؆7,u��9	|v��lnz��>���q_*Ob`2�҃N+"\hE��/�P����l�%���ׅ�vs6ƕz��`���3���[�A�X��n�,H�o�C�j�&�k��(0�$0U%0
+0��U��0���[�p�ir�#Q~�M��ˡr0p1+0)U"Copyright (c) 1997 Microsoft Corp.10UMicrosoft Corporation1!0UMicrosoft Root Authority���<<��>�c��@0	+�70Uo�N?��4�K�����;AC��0	+�7
SubCA0U�0U�0�0
	*�H��
��M1�|P���a�pE��sT�?	-��QS��9���Vތ�;���ɷ�Q!oi~k�"F�l�m|"�Fӄ���6��~�p]E�����ݎ��*�|�ɮ2Շ��c�6�!�v�;��s�!�ش�T���eJ�(&�`�;�exH�ϭ�:O�bX�0��9���9��!�d�c��C/{F����e�J��t��n̝�(a|H��!8��Ŗ2��@�S=�����f7��"��̰wTQ:�rD�#�0��0���
a�00
	*�H��
0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Timestamping PCA0
080725190115Z
130725191115Z0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1
0UMOPR1'0%UnCipher DSE ESN:85D3-305C-5BCF1%0#UMicrosoft Time-Stamp Service0�"0
	*�H��
�0�
��-����g%�&b�K�0��8��e4�6�$h�����{b,F�K�Q4��l�Z;���G=.5kE��<�f�i�J�',�<w[��p�KW�Я-����)��Ϟb�rT�;��?��Xl����u7����(����������=���2Ƞd��&qS��'vI�q��2x��lO"e�bMF/�#���p����2�+�@���,�l��2}��~�/2�f��EU���-g�g)���Z�#���0��0U�����i�YhN���zݛ.0U#0�o�N?��4�K�����;AC��0DU=0;09�7�5�3http://crl.microsoft.com/pki/crl/products/tspca.crl0H+<0:08+0�,http://www.microsoft.com/pki/certs/tspca.crt0U%0
+0U��0
	*�H��
�
?w_�<��5���V���/��?qՆ|w����|��
EH��i,�>gbT��'�9��هN��`G#{'@��
1��5��Ӌ�xaŵ�A�>6�X�'�:ڽ]��L��<��b��f���(�2��1	��"hFL��s"�)�"�V�����4�(�Jb����G�
��X;�k	i��H|U�?_8C��?�/�Os	=��^���7�da�M�=p�[���ԣ1�d֖�z?*[FS	<��?ỶSa1��0��0��0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Code Signing PCA
a��0	+���0	*�H��
	1
+�70
+�710
+�70#	*�H��
	1��	�����8U
�ʲ�0T
+�71F0D�*�(System.Xml.XPath.dll��http://microsoft.com0
	*�H��
�/^PH�&�Ǚ�	�zAM_��"�։$�J��H�Hp-|�˵�
W,?�cP$���(Q�,XO�W���j7�/�e�s�}��M��x
�HH�U�ذ�0�|*#%��!�_�en�nI�����S,��Z|7%}r�}!�m��~w��!B��)�\�|:�@뛄C�U�������J���/��ҰX)�K`�vfl�'.�S��I�D}%�ܤڎ��S�i�cD'�
\,c4�����~�Y�*-���0�	*�H��
	1�0�0��0y10	UUS10U
Washington10URedmond10U
Microsoft Corporation1#0!UMicrosoft Timestamping PCA
a�00+�]0	*�H��
	1	*�H��
0	*�H��
	1
111118215958Z0#	*�H��
	1K�����I27����:�0
	*�H��
�A0e�����M�@�Xxݍ�x���ƥ&�I����2��A�PaL�ʼ��2lM�ؑJ�~x��}sks�\�1�9�l	
��?��2KP�a�a��1�4f�K�S�pvA%�{���fS�G3���P�m�ػc�G�dt�3
�~�c�c~(��pϖߖ�{��
;�۾/~�%޻�6_��(�=m|o��G��?K��
%�bv����\�U>E&�K��*@���I��Wdh�id�M>/�a�r(PKc�B_���$AppManifest.xaml
 y�L:�b�y�L:�b�y�L:�b�PKc�B�%����$)PivotGridDemo.dll
 y�L:�b�y�L:�b�y�L:�b�PKc�Bc�nw����&$|�System.Windows.Controls.Data.Input.dll
 y�L:�b�y�L:�b�y�L:�b�PKc�Bω�I`I`I$d�System.Xml.XPath.dll
 MO:�b�MO:�b�MO:�b�PK��