From 37685319edcc591ef486f4abafbcfbd53fe5fd77 Mon Sep 17 00:00:00 2001 From: agusibrahim Date: Mon, 29 Apr 2019 21:59:30 +0700 Subject: [PATCH] - Flights Searching for CollectionView Challenge --- .../CollectionViewChallenge.Android.csproj | 8 +- .../Properties/AndroidManifest.xml | 8 +- .../Resources/drawable/dashed_line_5.png | Bin 0 -> 121 bytes .../Resources/drawable/icon_alert_circle.png | Bin 0 -> 967 bytes .../Resources/drawable/icon_plane.png | Bin 0 -> 606 bytes .../Resources/drawable/shadow_1.png | Bin 0 -> 15125 bytes .../Resources/drawable/unknown_airline.png | Bin 0 -> 717 bytes .../CollectionViewChallenge.iOS.csproj | 7 +- .../Resources/dashed_line_5.png | Bin 0 -> 121 bytes .../Resources/icon_alert_circle.png | Bin 0 -> 967 bytes .../Resources/icon_plane.png | Bin 0 -> 606 bytes .../Resources/shadow_1.png | Bin 0 -> 15125 bytes .../Resources/unknown_airline.png | Bin 0 -> 717 bytes .../CollectionViewChallenge.csproj | 1 + .../Converters/RupiahFormatConverter.cs | 18 + .../CollectionViewChallenge/ItemSelector.cs | 18 + .../Models/FlightTicket.cs | 21 + .../Views/CollectionViewChallengePage.xaml | 463 +++++++++++++++++- 18 files changed, 510 insertions(+), 34 deletions(-) create mode 100644 CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/dashed_line_5.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/icon_alert_circle.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/icon_plane.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/shadow_1.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/unknown_airline.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/dashed_line_5.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/icon_alert_circle.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/icon_plane.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/shadow_1.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/unknown_airline.png create mode 100644 CollectionViewChallenge/CollectionViewChallenge/Converters/RupiahFormatConverter.cs create mode 100644 CollectionViewChallenge/CollectionViewChallenge/ItemSelector.cs create mode 100644 CollectionViewChallenge/CollectionViewChallenge/Models/FlightTicket.cs diff --git a/CollectionViewChallenge/CollectionViewChallenge.Android/CollectionViewChallenge.Android.csproj b/CollectionViewChallenge/CollectionViewChallenge.Android/CollectionViewChallenge.Android.csproj index d2c42fc..bb293fb 100644 --- a/CollectionViewChallenge/CollectionViewChallenge.Android/CollectionViewChallenge.Android.csproj +++ b/CollectionViewChallenge/CollectionViewChallenge.Android/CollectionViewChallenge.Android.csproj @@ -15,7 +15,6 @@ Properties\AndroidManifest.xml Resources Assets - false v8.1 true Xamarin.Android.Net.AndroidClientHandler @@ -93,6 +92,11 @@ + + + + + @@ -102,7 +106,7 @@ - {BA39825E-3CF8-4A31-B120-782B2A651542} + {9A9DDEE5-8C48-4274-82D7-22EB79C97206} CollectionViewChallenge diff --git a/CollectionViewChallenge/CollectionViewChallenge.Android/Properties/AndroidManifest.xml b/CollectionViewChallenge/CollectionViewChallenge.Android/Properties/AndroidManifest.xml index 8a8223a..0a62e2d 100644 --- a/CollectionViewChallenge/CollectionViewChallenge.Android/Properties/AndroidManifest.xml +++ b/CollectionViewChallenge/CollectionViewChallenge.Android/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@ - + - - - + + + \ No newline at end of file diff --git a/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/dashed_line_5.png b/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/dashed_line_5.png new file mode 100644 index 0000000000000000000000000000000000000000..1c86c43b44c4fc5b16005b539882f400beab21ad GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^hk=-hgAGVNJ)N-|NHG=%xjQkeJ16rJ$T9YGaSX8# zOxDrS`I35o`Pc8?=8L`iUnM3;@HRgbXVdBF=`p`3Y_0fjg&bSkMFWYtLt`J T-x|6UsGY&n)z4*}Q$iB}<$ET~ literal 0 HcmV?d00001 diff --git a/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/icon_alert_circle.png b/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/icon_alert_circle.png new file mode 100644 index 0000000000000000000000000000000000000000..34a78c7be679796a4fa628de57f51a87e84ce714 GIT binary patch literal 967 zcmV;&133JNP)?@7XdOL0z^Oth`KHWV%ch7X<D%4_uiw0OPHq;;>zeCYLjp;%;olLw#* z%ERy6_$vuY@Pg~S;5q}~tm6gUcwH;VVI3f#R&_)@@OI&PP9Sb)GpyG#2zHDD9diSj zPiq1r07}Y}MTmn|#l21dK@M5Wk1B{7fRgf9CgkFp1Yn%${k@LV0S7FIE-W#>e`90MQ-iPyg#_BdZL7{Uy#{;0id~iZ=TTiNlw<#ET zeIbprt{P!je7XpIcN**`+;5*S6TLbh1Jz^S>ts?koT~ zFC6r?06cw2o27G4#3Qo+u$QGHpAR&$04V1#Cea5mGXZ!Sy;_bRs~8|qZN#sFC1P?n zXC?s8jzea&9-wg8Hn2DQBpfpV_&A`TQdn0W@EeX+-kAV$mHEo})&ny)oE-y2d3yq| znPW7gbpaTq5C!nf5)jV@`-c#P2#nh%lZ*y&N8&0j@j?7OB^*nk*=ckpfKVEpUC3qv z2o*AqviAfzQ}HB=GnzftWRDWL!`w(5z}wWM(-8F>$pH{P%rSZ9aoVQQqei5`P2uA- zGWTj|es$iXHa9eYz*;wrg|f|bz=CX!N0VWCDC92}jtr6Ol0waN0Kn*!kRGKr&({Q$ z8LiAMfO3^Ld%3W6vE^^b2uiZj-giT#OEta^Uu|*1AY(+1gyF9C2>qG#sSqVh?jo%5fmO=lG)l2tIRpr?% z3LwP<=liWkL-r99O^kiS#5((kY3or{xPNE?00^E+V(r}1losok=Hf*>a+GaK3t9mr zIc&o5+g9um0907yH9z&~1(1~G>;xElpV|Tho+sM1tUJsd1z-xeeVDO002ovPDHLkV1iWOzFhzS literal 0 HcmV?d00001 diff --git a/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/icon_plane.png b/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/icon_plane.png new file mode 100644 index 0000000000000000000000000000000000000000..b52047f04578b7e9291449b5d54f085a07175c71 GIT binary patch literal 606 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*bK+V@dn9)gNb_Gzw3QrfukO=pq)AxEEaS&*jENrvk%YjQly0uKU z*{rqA+O>?_-rBQ2Gp-ZX_7+_uy5vnDb^YqfndymvmeK9{joah0d9#9{X>vn?)WIqU3U5vkv3>G!=Z@)6g| z89QY1+$#^w;wh{-FfA$)Z%R)RLwHN| z9skxlt@vsrlC@v3bYr{h+5@4lF4$!}Gd0_4Sh?z?P2v)MWuP-()yf<`5%1xY?{cZ( zG@G#PObeOq%JTzGdas;yrNt}mwDYtBe}8VD`QX@*r-jy^IH%UkTIm_S;?3hN&(43= zc*Xqab1tKqQPx6WL^61~`njxgN@%jsH89mRGz~E{v@$TTGBwpUFak0fqq^0BiX=;1 mBT9nv(@M${i&7cN%ggmL^RkPR6AM!H@{7`Ezq64-HVOb}qxm8L literal 0 HcmV?d00001 diff --git a/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/shadow_1.png b/CollectionViewChallenge/CollectionViewChallenge.Android/Resources/drawable/shadow_1.png new file mode 100644 index 0000000000000000000000000000000000000000..adf143ce661641ed1616adf9484ac3cb0641b6b1 GIT binary patch literal 15125 zcmeI3U#JvS9LG-(kvGNufJsxT3OR)p~vLljADgSaZX_nUc^3A%W* zNp{#z$V_J@nGxH8Of(eZbTKS5aU~>16YMkY+t_NwxNkdn6 z%(7?N7URd&a(2Z_vaFw|^=ZtjRBk1*+y*;Dk*{fGUJMER0H;ib>{crE^>n?_IW&^S z%=#vDv-4%hPeIqNI654igO<0t-yjUV6{lQriUA)(=V1|+kc*23FZLZmxnO&?Td)Vr zyCn~ty=Ugzi_EFF%gQ)uoX(==2m9*IeMSmYwQ9Oa-K$#IG< zMK~=gMPj;`gN7ChCfV)Y6FP0{6~B;B==#PtY#oJfm4|A?!r{1-m${e`^+7_JlZCv< z>2X2RbXkeS((@RN>Y*=%L zm;Vo{1~4|Ehdr2zMWbPK_~OmD$D~<<#p$$(&Ux2AuS7Jjzy}xlI&K~0*da6=>!r}~ zSQhN@dMkS9L(iLh>w&Xp`?pTXdwJ8I(Y=g{#iB_tAY_x`BJ;siiVFimHYqMLA55jV zFd$@;;v)0GREi4&LN+NbG9OH(xG*4Olj0)t!BmP1141?_E;1iXrMNI4WRv0|^TAY# z3j;znDK0V}Or^LmAY_x`BJ;siiVFimHYqMLA55jVFd$@;;v)0GREi4&LN+NbG9OH( zxG*4Olj0)t!BmP1141?_E;1iXrMNI4WRv0|^TAY#3j;znDK0V}Or^LmAY_x`BJ;si ziVFimHYqMLA55jVFd$@;;v)0GREi4&LNHvpqD!teQYWN zz``>C>^lI!-*?gV1^^WSfZuiipuPvd&Xp2T>WLwnzPq)mpS{h^r_7!T9Jz`jeM-?EeQ{6LI8z+pe){oNbMfUBlccoxSE>d-r5Fo{aHi+qU`X2`ATHpG{}}WB!)!zFP`^ zPy!<`0`nz-5g36H7=elR@@}wQv0igr{*dje^_umn`w(rfJ4UVITSbZ_*kFh4V|F+p z!Fhl-(;1`Ia2_OZAp!bLaS#New34nEwVwTigb?Ttg+LG;t=m1rD2}rRL_vQ_hE%My z(h)-|IFCz+fc_#IthaT2n!K9{LcgRaFhbs?BPO(nzz6!vVju_^b;HC4NCi$%jRGKu z4b%yv*0tU>L(#;zU?`x~b;8Iy2_m4HSz$k`(>MrOwC)yG0usC%b-~0&k|HN)k|H38 z%+dj)v^GD|zFSyc5X3ui$Ix;gUUN~_*N4HQ&3cx;XJ_odnPi2Ku$qn z^V%QdjEVO&ytYA2g<N^pRtnI8nPp`0*E7gK>5O4=AVqyn`X7mU){_Sk?} zx)e6A&vRMgXchN)f^Y^Dh0SXo81HWFXGnWqhv#s>1Y_(O$|N5M5*_o73C|^Pfo7N! zMmDeWiHQx93hYobq^K~#wLi~)A>#dwuWXu+bBcK#&nqV0%lN{Y1%)D*VqUYjQ&=95 z5~X?GFwsedx7kwIeof2f2@_gEifma^R2bNPojXQtEbk?7LIusTC(tT5-01qL|IW&P`wR*DbwZI*Y) z+vKh9+a_<%u^r(B;-|F02n?qLMqmU+U + + + + + @@ -139,7 +144,7 @@ - {BA39825E-3CF8-4A31-B120-782B2A651542} + {9A9DDEE5-8C48-4274-82D7-22EB79C97206} CollectionViewChallenge diff --git a/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/dashed_line_5.png b/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/dashed_line_5.png new file mode 100644 index 0000000000000000000000000000000000000000..1c86c43b44c4fc5b16005b539882f400beab21ad GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^hk=-hgAGVNJ)N-|NHG=%xjQkeJ16rJ$T9YGaSX8# zOxDrS`I35o`Pc8?=8L`iUnM3;@HRgbXVdBF=`p`3Y_0fjg&bSkMFWYtLt`J T-x|6UsGY&n)z4*}Q$iB}<$ET~ literal 0 HcmV?d00001 diff --git a/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/icon_alert_circle.png b/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/icon_alert_circle.png new file mode 100644 index 0000000000000000000000000000000000000000..34a78c7be679796a4fa628de57f51a87e84ce714 GIT binary patch literal 967 zcmV;&133JNP)?@7XdOL0z^Oth`KHWV%ch7X<D%4_uiw0OPHq;;>zeCYLjp;%;olLw#* z%ERy6_$vuY@Pg~S;5q}~tm6gUcwH;VVI3f#R&_)@@OI&PP9Sb)GpyG#2zHDD9diSj zPiq1r07}Y}MTmn|#l21dK@M5Wk1B{7fRgf9CgkFp1Yn%${k@LV0S7FIE-W#>e`90MQ-iPyg#_BdZL7{Uy#{;0id~iZ=TTiNlw<#ET zeIbprt{P!je7XpIcN**`+;5*S6TLbh1Jz^S>ts?koT~ zFC6r?06cw2o27G4#3Qo+u$QGHpAR&$04V1#Cea5mGXZ!Sy;_bRs~8|qZN#sFC1P?n zXC?s8jzea&9-wg8Hn2DQBpfpV_&A`TQdn0W@EeX+-kAV$mHEo})&ny)oE-y2d3yq| znPW7gbpaTq5C!nf5)jV@`-c#P2#nh%lZ*y&N8&0j@j?7OB^*nk*=ckpfKVEpUC3qv z2o*AqviAfzQ}HB=GnzftWRDWL!`w(5z}wWM(-8F>$pH{P%rSZ9aoVQQqei5`P2uA- zGWTj|es$iXHa9eYz*;wrg|f|bz=CX!N0VWCDC92}jtr6Ol0waN0Kn*!kRGKr&({Q$ z8LiAMfO3^Ld%3W6vE^^b2uiZj-giT#OEta^Uu|*1AY(+1gyF9C2>qG#sSqVh?jo%5fmO=lG)l2tIRpr?% z3LwP<=liWkL-r99O^kiS#5((kY3or{xPNE?00^E+V(r}1losok=Hf*>a+GaK3t9mr zIc&o5+g9um0907yH9z&~1(1~G>;xElpV|Tho+sM1tUJsd1z-xeeVDO002ovPDHLkV1iWOzFhzS literal 0 HcmV?d00001 diff --git a/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/icon_plane.png b/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/icon_plane.png new file mode 100644 index 0000000000000000000000000000000000000000..b52047f04578b7e9291449b5d54f085a07175c71 GIT binary patch literal 606 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*bK+V@dn9)gNb_Gzw3QrfukO=pq)AxEEaS&*jENrvk%YjQly0uKU z*{rqA+O>?_-rBQ2Gp-ZX_7+_uy5vnDb^YqfndymvmeK9{joah0d9#9{X>vn?)WIqU3U5vkv3>G!=Z@)6g| z89QY1+$#^w;wh{-FfA$)Z%R)RLwHN| z9skxlt@vsrlC@v3bYr{h+5@4lF4$!}Gd0_4Sh?z?P2v)MWuP-()yf<`5%1xY?{cZ( zG@G#PObeOq%JTzGdas;yrNt}mwDYtBe}8VD`QX@*r-jy^IH%UkTIm_S;?3hN&(43= zc*Xqab1tKqQPx6WL^61~`njxgN@%jsH89mRGz~E{v@$TTGBwpUFak0fqq^0BiX=;1 mBT9nv(@M${i&7cN%ggmL^RkPR6AM!H@{7`Ezq64-HVOb}qxm8L literal 0 HcmV?d00001 diff --git a/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/shadow_1.png b/CollectionViewChallenge/CollectionViewChallenge.iOS/Resources/shadow_1.png new file mode 100644 index 0000000000000000000000000000000000000000..adf143ce661641ed1616adf9484ac3cb0641b6b1 GIT binary patch literal 15125 zcmeI3U#JvS9LG-(kvGNufJsxT3OR)p~vLljADgSaZX_nUc^3A%W* zNp{#z$V_J@nGxH8Of(eZbTKS5aU~>16YMkY+t_NwxNkdn6 z%(7?N7URd&a(2Z_vaFw|^=ZtjRBk1*+y*;Dk*{fGUJMER0H;ib>{crE^>n?_IW&^S z%=#vDv-4%hPeIqNI654igO<0t-yjUV6{lQriUA)(=V1|+kc*23FZLZmxnO&?Td)Vr zyCn~ty=Ugzi_EFF%gQ)uoX(==2m9*IeMSmYwQ9Oa-K$#IG< zMK~=gMPj;`gN7ChCfV)Y6FP0{6~B;B==#PtY#oJfm4|A?!r{1-m${e`^+7_JlZCv< z>2X2RbXkeS((@RN>Y*=%L zm;Vo{1~4|Ehdr2zMWbPK_~OmD$D~<<#p$$(&Ux2AuS7Jjzy}xlI&K~0*da6=>!r}~ zSQhN@dMkS9L(iLh>w&Xp`?pTXdwJ8I(Y=g{#iB_tAY_x`BJ;siiVFimHYqMLA55jV zFd$@;;v)0GREi4&LN+NbG9OH(xG*4Olj0)t!BmP1141?_E;1iXrMNI4WRv0|^TAY# z3j;znDK0V}Or^LmAY_x`BJ;siiVFimHYqMLA55jVFd$@;;v)0GREi4&LN+NbG9OH( zxG*4Olj0)t!BmP1141?_E;1iXrMNI4WRv0|^TAY#3j;znDK0V}Or^LmAY_x`BJ;si ziVFimHYqMLA55jVFd$@;;v)0GREi4&LNHvpqD!teQYWN zz``>C>^lI!-*?gV1^^WSfZuiipuPvd&Xp2T>WLwnzPq)mpS{h^r_7!T9Jz`jeM-?EeQ{6LI8z+pe){oNbMfUBlccoxSE>d-r5Fo{aHi+qU`X2`ATHpG{}}WB!)!zFP`^ zPy!<`0`nz-5g36H7=elR@@}wQv0igr{*dje^_umn`w(rfJ4UVITSbZ_*kFh4V|F+p z!Fhl-(;1`Ia2_OZAp!bLaS#New34nEwVwTigb?Ttg+LG;t=m1rD2}rRL_vQ_hE%My z(h)-|IFCz+fc_#IthaT2n!K9{LcgRaFhbs?BPO(nzz6!vVju_^b;HC4NCi$%jRGKu z4b%yv*0tU>L(#;zU?`x~b;8Iy2_m4HSz$k`(>MrOwC)yG0usC%b-~0&k|HN)k|H38 z%+dj)v^GD|zFSyc5X3ui$Ix;gUUN~_*N4HQ&3cx;XJ_odnPi2Ku$qn z^V%QdjEVO&ytYA2g<N^pRtnI8nPp`0*E7gK>5O4=AVqyn`X7mU){_Sk?} zx)e6A&vRMgXchN)f^Y^Dh0SXo81HWFXGnWqhv#s>1Y_(O$|N5M5*_o73C|^Pfo7N! zMmDeWiHQx93hYobq^K~#wLi~)A>#dwuWXu+bBcK#&nqV0%lN{Y1%)D*VqUYjQ&=95 z5~X?GFwsedx7kwIeof2f2@_gEifma^R2bNPojXQtEbk?7LIusTC(tT5-01qL|IW&P`wR*DbwZI*Y) z+vKh9+a_<%u^r(B;-|F02n?qLMqmU+U + \ No newline at end of file diff --git a/CollectionViewChallenge/CollectionViewChallenge/Converters/RupiahFormatConverter.cs b/CollectionViewChallenge/CollectionViewChallenge/Converters/RupiahFormatConverter.cs new file mode 100644 index 0000000..f6bfda0 --- /dev/null +++ b/CollectionViewChallenge/CollectionViewChallenge/Converters/RupiahFormatConverter.cs @@ -0,0 +1,18 @@ +using System; +using System.Globalization; +using Xamarin.Forms; +namespace CollectionViewChallenge.Converters { + public class RupiahFormatConverter : IValueConverter { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { + long curval = System.Convert.ToInt64(value); + if (curval == -1) return "-"; + var dd = curval.ToString("C", System.Globalization.CultureInfo.GetCultureInfo("id-ID")); + return ("IDR " + dd.ToLower().Replace("rp", "")).Trim(); + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { + var dd = (value is long ? (long)value : 0).ToString("C", System.Globalization.CultureInfo.GetCultureInfo("id-ID")); + return dd.ToLower().Replace("rp", ""); + } + } +} diff --git a/CollectionViewChallenge/CollectionViewChallenge/ItemSelector.cs b/CollectionViewChallenge/CollectionViewChallenge/ItemSelector.cs new file mode 100644 index 0000000..25489b3 --- /dev/null +++ b/CollectionViewChallenge/CollectionViewChallenge/ItemSelector.cs @@ -0,0 +1,18 @@ +using System; +using Xamarin.Forms; +using CollectionViewChallenge.Models; + +namespace CollectionViewChallenge { + public class ItemSelector : DataTemplateSelector { + + protected override DataTemplate OnSelectTemplate(object item, BindableObject container) { + var ticket = (FlightTicket)item; + if (ticket.IsFooter) return BlankFooter; + else if (ticket.IsHeader) return BlankHeader; + else return FlightTemplate; + } + public DataTemplate FlightTemplate { get; set; } + public DataTemplate BlankHeader { get; set; } + public DataTemplate BlankFooter { get; set; } + } +} diff --git a/CollectionViewChallenge/CollectionViewChallenge/Models/FlightTicket.cs b/CollectionViewChallenge/CollectionViewChallenge/Models/FlightTicket.cs new file mode 100644 index 0000000..6a2e89d --- /dev/null +++ b/CollectionViewChallenge/CollectionViewChallenge/Models/FlightTicket.cs @@ -0,0 +1,21 @@ +using System; +namespace CollectionViewChallenge.Models { + public class FlightTicket { + public string BoardingTime { get; set; } + public string DepartureTime { get; set; } + public string BoardingAirport { get; set; } + public string DepartureAirport { get; set; } + public string FlightTime { get; set; } + public int Stops { get; set; } + public long Price { get; set; } + public long PriceCoret { + get { + return Price + 100000; + } + } + public string AirlineLogo { get; set; } + public bool IsHeader { get; set; } + public bool IsFooter { get; set; } + public bool IsTicket { get; set; } + } +} diff --git a/CollectionViewChallenge/CollectionViewChallenge/Views/CollectionViewChallengePage.xaml b/CollectionViewChallenge/CollectionViewChallenge/Views/CollectionViewChallengePage.xaml index f2da7f7..b09e3ff 100644 --- a/CollectionViewChallenge/CollectionViewChallenge/Views/CollectionViewChallengePage.xaml +++ b/CollectionViewChallenge/CollectionViewChallenge/Views/CollectionViewChallengePage.xaml @@ -1,32 +1,441 @@ - - + + + + + #2196F3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - This is a CollectionView! - Your feedback on the experience of converting a ListView to a CollectionView is incredibly appreciated. - Here are three general questions: - 1. How was the experience of converting your existing ListView to a CollectionView? - 2. How is the performance compared to the ListView? - 3. Is there a specific piece of functionality that you'd like to see? - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +