From 150cb3bc9fb27a24a252cfac81c45ec7c3cd8984 Mon Sep 17 00:00:00 2001 From: James Croft Date: Sun, 27 Feb 2022 17:20:53 +0000 Subject: [PATCH 1/3] Updated DropDownList to support the Uno Platform --- .../MADE.Samples.Droid.csproj | 53 +++++++- .../MADE.Samples/MADE.Samples.Droid/Main.cs | 47 ++++---- .../MADE.Samples.Droid/MainActivity.cs | 2 +- .../Properties/AndroidManifest.xml | 8 +- .../Resources/drawable/Icon.png | Bin 4147 -> 0 bytes .../Resources/mipmap-hdpi/icon.png | Bin 0 -> 2609 bytes .../Resources/mipmap-ldpi/icon.png | Bin 0 -> 1249 bytes .../Resources/mipmap-mdpi/icon.png | Bin 0 -> 1773 bytes .../Resources/mipmap-tvdpi/icon.png | Bin 0 -> 2429 bytes .../Resources/mipmap-xhdpi/icon.png | Bin 0 -> 3585 bytes .../Resources/mipmap-xxhdpi/icon.png | Bin 0 -> 5140 bytes .../Resources/mipmap-xxxhdpi/icon.png | Bin 0 -> 7485 bytes .../Home/ViewModels/MainPageViewModel.cs | 4 + .../Assets/DropDownList/DropDownListCode.txt | 19 +++ .../Assets/DropDownList/DropDownListXaml.txt | 20 ++++ .../Features/Samples/Pages/AppDialogPage.xaml | 2 +- .../Features/Samples/Pages/ChipBoxPage.xaml | 4 +- .../Samples/Pages/DropDownListPage.xaml | 76 ++++++++++++ .../Samples/Pages/DropDownListPage.xaml.cs | 21 ++++ .../Samples/Pages/FilePickerPage.xaml | 2 +- .../Samples/Pages/InputValidatorPage.xaml | 2 +- .../Samples/Pages/WindowManagerPage.xaml | 2 +- .../ViewModels/ChipBoxPageViewModel.cs | 7 -- .../ViewModels/DropDownListPageViewModel.cs | 41 +++++++ .../MADE.Samples.Shared.projitems | 18 +++ .../MADE.Samples.UWP/MADE.Samples.UWP.csproj | 17 ++- .../MADE.Samples.Wasm.csproj | 3 + .../MADE.Samples.iOS/MADE.Samples.iOS.csproj | 13 ++ .../DropDownList.cs | 113 +++++++++++++++++- ...opDownListSelectedItemsUpdatedEventArgs.cs | 27 +++++ ...ownListSelectedItemsUpdatedEventHandler.cs | 12 ++ .../IDropDownList.cs | 6 + .../IDropDownList2.cs | 35 ++++++ .../MADE.UI.Controls.DropDownList.csproj | 6 +- 34 files changed, 507 insertions(+), 53 deletions(-) delete mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/drawable/Icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-hdpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-ldpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-mdpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-tvdpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-xhdpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-xxhdpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-xxxhdpi/icon.png create mode 100644 samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListCode.txt create mode 100644 samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListXaml.txt create mode 100644 samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/DropDownListPage.xaml create mode 100644 samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/DropDownListPage.xaml.cs create mode 100644 samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/ViewModels/DropDownListPageViewModel.cs create mode 100644 src/MADE.UI.Controls.DropDownList/DropDownListSelectedItemsUpdatedEventArgs.cs create mode 100644 src/MADE.UI.Controls.DropDownList/DropDownListSelectedItemsUpdatedEventHandler.cs create mode 100644 src/MADE.UI.Controls.DropDownList/IDropDownList2.cs diff --git a/samples/MADE.Samples/MADE.Samples.Droid/MADE.Samples.Droid.csproj b/samples/MADE.Samples/MADE.Samples.Droid/MADE.Samples.Droid.csproj index 9fd02b6..5e99614 100644 --- a/samples/MADE.Samples/MADE.Samples.Droid/MADE.Samples.Droid.csproj +++ b/samples/MADE.Samples/MADE.Samples.Droid/MADE.Samples.Droid.csproj @@ -17,7 +17,7 @@ true Off False - v10.0 + v12.0 Properties\AndroidManifest.xml True ..\MADE.Samples.Shared\Strings @@ -74,6 +74,12 @@ 5.0.2 + + 5.0.0 + + + 5.0.0 + 2.1.0-uno.32 @@ -81,6 +87,9 @@ 7.1.11 + + 4.0.13 + @@ -97,9 +106,6 @@ - - - @@ -111,6 +117,10 @@ {d1a16208-5a34-4cc1-b175-01b5ac99e69e} MADE.UI.Controls.ChipBox + + {347cdc37-e140-42fa-8710-a0f3297d2b6b} + MADE.UI.Controls.DropDownList + {774fd8d5-ccc1-4eed-aa14-f7069bfae5ce} MADE.UI.Controls.FilePicker @@ -144,6 +154,41 @@ MADE.UI + + + MSBuild:UpdateGeneratedFiles + + + + + MSBuild:UpdateGeneratedFiles + + + + + MSBuild:UpdateGeneratedFiles + + + + + MSBuild:UpdateGeneratedFiles + + + + + MSBuild:UpdateGeneratedFiles + + + + + MSBuild:UpdateGeneratedFiles + + + + + MSBuild:UpdateGeneratedFiles + + diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Main.cs b/samples/MADE.Samples/MADE.Samples.Droid/Main.cs index 80485e8..81bc383 100644 --- a/samples/MADE.Samples/MADE.Samples.Droid/Main.cs +++ b/samples/MADE.Samples/MADE.Samples.Droid/Main.cs @@ -14,30 +14,29 @@ namespace MADE.Samples.Droid { - [global::Android.App.ApplicationAttribute( - Label = "@string/ApplicationName", - LargeHeap = true, - HardwareAccelerated = true, - Theme = "@style/AppTheme" - )] - public class Application : Windows.UI.Xaml.NativeApplication - { - public Application(IntPtr javaReference, JniHandleOwnership transfer) - : base(() => new App(), javaReference, transfer) - { - ConfigureUniversalImageLoader(); - } + [global::Android.App.ApplicationAttribute( + Label = "@string/ApplicationName", + Icon = "@mipmap/icon", + LargeHeap = true, + HardwareAccelerated = true, + Theme = "@style/AppTheme" + )] + public class Application : Windows.UI.Xaml.NativeApplication + { + public Application(IntPtr javaReference, JniHandleOwnership transfer) + : base(() => new App(), javaReference, transfer) + { + ConfigureUniversalImageLoader(); + } - private void ConfigureUniversalImageLoader() - { - // Create global configuration and initialize ImageLoader with this config - ImageLoaderConfiguration config = new ImageLoaderConfiguration - .Builder(Context) - .Build(); + private void ConfigureUniversalImageLoader() + { + // Create global configuration and initialize ImageLoader with this config + ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(Context).Build(); - ImageLoader.Instance.Init(config); + ImageLoader.Instance.Init(config); - ImageSource.DefaultImageLoader = ImageLoader.Instance.LoadImageAsync; - } - } -} + ImageSource.DefaultImageLoader = ImageLoader.Instance.LoadImageAsync; + } + } +} \ No newline at end of file diff --git a/samples/MADE.Samples/MADE.Samples.Droid/MainActivity.cs b/samples/MADE.Samples/MADE.Samples.Droid/MainActivity.cs index 0068dd6..7085db3 100644 --- a/samples/MADE.Samples/MADE.Samples.Droid/MainActivity.cs +++ b/samples/MADE.Samples/MADE.Samples.Droid/MainActivity.cs @@ -1,4 +1,4 @@ -using Android.App; +using Android.App; using Android.Widget; using Android.OS; using Android.Content.PM; diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Properties/AndroidManifest.xml b/samples/MADE.Samples/MADE.Samples.Droid/Properties/AndroidManifest.xml index 680b738..acb8923 100644 --- a/samples/MADE.Samples/MADE.Samples.Droid/Properties/AndroidManifest.xml +++ b/samples/MADE.Samples/MADE.Samples.Droid/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@  - - - - + + + + \ No newline at end of file diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Resources/drawable/Icon.png b/samples/MADE.Samples/MADE.Samples.Droid/Resources/drawable/Icon.png deleted file mode 100644 index 8074c4c571b8cd19e27f4ee5545df367420686d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4147 zcmV-35X|q1P)OwvMs$Q8_8nISM!^>PxsujeDCl4&hPxrxkp%Qc^^|l zp6LqAcf3zf1H4aA1Gv-O6ha)ktct9Y+VA@N^9i;p0H%6v>ZJZYQ`zEa396z-gi{r_ zDz)D=vgRv62GCVeRjK{15j7V@v6|2nafFX6W7z2j1_T0a zLyT3pGTubf1lB5)32>bl0*BflrA!$|_(WD2)iJIfV}37=ZKAC zSe3boYtQ=;o0i>)RtBvsI#iT{0!oF1VFeW`jDjF2Q4aE?{pGCAd>o8Kg#neIh*AMY zLl{;F!vLiem7s*x0<9FKAd6LoPz3~G32P+F+cuGOJ5gcC@pU_?C2fmix7g2)SUaQO$NS07~H)#fn!Q<}KQWtX}wW`g2>cMld+`7Rxgq zChaey66SG560JhO66zA!;sK1cWa2AG$9k~VQY??6bOmJsw9@3uL*z;WWa7(Nm{^TA zilc?y#N9O3LcTo2c)6d}SQl-v-pE4^#wb=s(RxaE28f3FQW(yp$ulG9{KcQ7r>7mQ zE!HYxUYex~*7IinL+l*>HR*UaD;HkQhkL(5I@UwN%Wz504M^d!ylo>ANvKPF_TvA< zkugG5;F6x}$s~J8cnev->_(Ic7%lGQgUi3n#XVo36lUpcS9s z)ympRr7}@|6WF)Ae;D{owN1;aZSR50al9h~?-WhbtKK%bDd zhML131oi1Bu1&Qb$Cp199LJ#;j5d|FhW8_i4KO1OI>}J^p2DfreMSVGY9aFlr&90t zyI2FvxQiKMFviSQeP$Ixh#70qj5O%I+O_I2t2XHWqmh2!1~tHpN3kA4n=1iHj?`@c<~3q^X6_Q$AqTDjBU`|!y<&lkqL|m5tG(b z8a!z&j^m(|;?SW(l*?tZ*{m2H9d&3jqBtXh>O-5e4Qp-W*a5=2NL&Oi62BUM)>zE3 zbSHb>aU3d@3cGggA`C-PsT9^)oy}%dHCaO~nwOrm5E54=aDg(&HR4S23Oa#-a^=}w%g?ZP-1iq8PSjE8jYaGZu z$I)?YN8he?F9>)2d$G6a*zm0XB*Rf&gZAjq(8l@CUDSY1tB#!i> zW$VfG%#SYSiZ};)>pHA`qlfDTEYQEwN6>NNEp+uxuqx({Fgr zjI@!4xRc?vk^9+~eU|mzH__dCDI=xb{Cd}4bELS9xRaS!*FXMwtMR-RR%SLMh0Cjl zencr8#Su<4(%}$yGVBU-HX{18v=yPH*+%^Vtknc>2A;%-~DrYFx^3XfuVgvZ{#1tA== zm3>IzAM2{3Iv_d1XG{P6^tN3|PkJMnjs&CWN7%7_CmjoVakUhsa&dMv==2~^ri?&x zVdv*rnfVyM+I1^Kg*S=23mR@+0T9BWFZUu~@toA8d)fw6be=`Yb6DSX6D?jB%2YT~ z*aHjtIOozfMhA!Jd*?u5_n!SnX>vX`=Ti-1HA4RiE>eI3vTn zz+>Ccf0HX6Ans-ebOB>RJST-Cyr#4XAk+mAlJgdQnoE{^iIN)OcYFSpgJUmXtl@tT z-^ZuUeSj5hSFrQwqX>~EtZ*{>Gi8Bu9_|o06oNtaXP?E936!a@DsvS*tsB@fa6kEA z5GkjwmH?EgpiG&itsB_Tb1NxtFnvxh_s@9KYX1Sttf?AlI~)z zT=6Y7ulx=}<8Scr_UqU-_z)5gPo%050PsbM*ZLno;_-ow&k?FZJtYmb2hPA$LkP)8 z=^d0Q6PImh6Y|QT?{grxj)S=uBKvY2EQUbm@ns9^yKiP~$DcD)c$5Em`zDSScH%iH zVov&m=cMo`1tYwA=!a}vb_ef_{)Q2?FUqn>BR$6phXQRv^1%=YfyE-F$AR4Q?9D!f zCzB^^#td~4u&l~l#rp2QLfe3+_ub9@+|x+m;=2(sQ`s%gO|j$XBb>A7Q(UydipiMw%igcweV#Cr~SP);q>w`bxts_4} znKHg?X==JDkQl3Y>Ckt%`s{n?Nq-1Fw5~%Mq$CAsi-`yu_bKm zxs#QdE7&vgJD%M84f4SNzSDv)S|V?|$!d5a#lhT5>>YWE4NGqa9-fbmV$=)@k&32kdEYetna>=j@0>V8+wRsL;po!3ivVwh<9tn z2S<1u9DAAQ>x1Sn=fk`)At|quvleV($B|#Kap_lB-F^*yV=wZ{9baUu(uXfokr95^ zA*!*W=5a>$2Ps`-F^+qRQT^{*cN>vipT*4!r#p%{(#I7s z0NN94*q?ib$KJjfDI_sjHNdmEVp5wB&j54O#VoFqBwy)gfA$%)4d_X4q${L9Xom2R3xy&ZBSNgt4a1d7K^CDWa9r zVb-_52m}Vp)`9;ZSKd#|U4ZYj5}Gp49{4utST|=c`~(#>KHF6}CCov1iHYw zt{bWo)A@yF2$~c(nR$rSAaFQ$(Wh{vkG1AlutDMw=mM`C`T=X&|Ad9fb5Od}ROt1z zOpczHqrb4Jo^rSCiW#&o(m7jFamnrsTpQb;*h4o8r#$aZ}2RaT-x2u^^ z%u@YyIv$U^u~@9(XGbSwU@fk6SikH>j+D1jQrYTKGJpW%vUT{!d}7THI5&Sa?~MKy zS0-mvMl+BOcroEJ@hN!2H_?coTEJ5Q<;Nd?yx;eIj4{$$E2?YUO|NtNPJ-PdDf;s} zab;}Mz0kbOI}5*w@3gROcnl#5)wQnEhDBfn!Xhy`u>C}*E~vWpO^HS)FC>8^umI=+ z&H;LW6w#;EF`}vQd_9Muru`KnQVPI9U?(sD)&Dg-0j3#(!fNKVZ_GoYH{la~d*1Yh$TI-TL>mI4vpNb@sU2=IZ8vL%AXUx0 zz{K0|nK(yizLHaeW#ZhRfQXoK^}1$=$#1{Yn002ovPDHLkV1n#w+^+xt diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-hdpi/icon.png b/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-hdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..024be3ca56ee59b5529a66508c22d52cc105afd1 GIT binary patch literal 2609 zcmV-13eNS3P)9|9tKS1eTzHPSho>5ET)tnA8|&9XdeLU`R(zn@T1$GSjI#V^pS-4vCN_zE$Lili8OF*#Sb1-3+au{%sbXdHTUx5dzN2hu zSUC=0bcU2t$QTvWu^sU10sEu0Ljoi%W+og-khGZDaO@#z!~m5|vjg>KIqnQcH%$-J zpG9X6sA`%YtUpQ>feFC4@42IiN(f|saxe|FFgyyH5EZ7Ga)MzCA^f6su?tYR>_MbN z#|dznzwXBV)&}Um_#DQOA^2H38e%lOwD6(GS`Iz%2nWcOt`C?{(0CdZ|M?t#lz{+^ z!iOR_C)0nzy-HEZm5)%;at{7d5GzISk;LFsu%Wc0;Uw}eoIrW|6_|#HkaBk%)Iq`A z|2ZpTKjYc%PWVGUvmk-f~KkQ4>9J!uv4zq>-Hlh1KAtX#?8kOHBQXh`i~fOwT( zYY}zGQbaRb#+k#o{B@VmR+zjNxe3dlv=pDw=1%yZxvmTY6~(aj7$8^9 zPTvru#b3hnaQ((vw6vC^xvd=Dl-DgNAWVbEEeCOC?Ka#}MTqtZo}Y@aAME6QosqU0 z$PvwM6tCspYa3pgQ6r3j8kjW?ATePBq9PWetEbs(7UfkyfiYS{KUa^CB%MS1aBDS& z+p29J7!@zHQ@=n4bogo|epO)$Q;9;1WOebaJHEVnY}wY4W13lcUt z^r^j6g4)Iscp|S@kQkf+eK7~e*&$oL{0!#$KO-pqJ_OIb&-Q+1RiVjQ7-~4e#++Hw zXLgwfSgK^LP%k+3BCh|p4RJBcp;p;)?hEIw<6b*%o`t*ec$yc3)62jNRus8>4_Qj@ z8;^4kd68eD{g4lnBIj&?Y1qs;>9_S6F!o&++8J;XeP!)t{3DOJ=g1ZvmV_A6nyk@Zjr!|VB`8ZdB`?Vs6#baoxB}#BpXmo>nWU&QR931=L^Z*NdOIkjX^mz@<`yH$(YSuzXl`KGE*?Wa;il=U$ z`aR@oGB~`PA-&$!-~fkm*Lzs%M2>p<$9<7nCGCU(DOhSpGIRT(HCRy$xe|l($@6*# zIOF>-;$Hvwoh8`xWuwqeaPrT;54nnzVKw%W49Gb&u*i(W#o&ZhE)jWzDg3rjcNb1dVy-aVn}?0)xFLOItysd$UZQYn7U8Z730(BOCHo}zYA<1QT9 zFD(>#wYBRZN0I?qzcL8hG`sLK%T!WDhEITV>9$@QdE38l14s*8fGprwz>9Qn5`Dbkr*6GeKfQjfLzG}M5ziIUVNH@)z6{k<-W<`Nx zA%H7LYl`zQdual<-PhTT6I)y#pctg)z(r`jc3f8K)Z1`K@}qecVGlRGhtSjigIqzn``7J=N?k3q^>yBowO=tvTQ^=n z+Oi#@{THx2k5X_*9w+T7n2g+ZoO9m1q9Tn*Uwekz9_}5$-|qi8hI$7fM~T{OJgPe+ ztbj>$?u))St-1*ut&mfaavk31O*ka4oz<`(Vj&?T$kKhly^@@#cc~%>KV{aTiI_T$ zqG-Lg@g+8u?}s<#wew<>I^~@A(kzUsV-OT%#hjS0xc|*g*5cn4=QwMUBR+LXDGEB@ zouZ*HM#WHh5$=kD-yHqR>`aL5az3)mx}s7jCB?5WqhFT3RNP8iz)GuYParu5 zzwc!3k?q^$$R`(Zc2+lWQ25ZpT}WcVuP4?hMLxSun!bo9kO4PXUp{ASGn2=7yoOFCpJ`|F3e9y6thHjo|1v?q$mb z<@}Dld=7}@3@I!&8rsa&!Wt=99m@Wv#UpPQV*dK^t7Lr*hvf5{S?slH7aKaepODn| zM%@*bHhI;ja7bi9Ps7DszDkRh0R3#O6vM2AU)PAKZttH^``nv8@i|W7Zik{feEoXY zAq_WLbuZicLk4R+3u*Y^B3j;hpWF76s_D;8O#d5f{Z)3}xv6(@aX0lEFlI`3vVMK>|) TFKA>e00000NkvXXu0mjfLmTWq literal 0 HcmV?d00001 diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-ldpi/icon.png b/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-ldpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2194c9ca11e92f7671c8415cd9aa9f706e44d340 GIT binary patch literal 1249 zcmV<71Rnc|P)Dm z)I<^?5`4@UH2ecqGC_&UoNgJSDJFE?a9fM8!YpftcsS>5ZQ9-2=NRRi{MO~%-?`_L z-|My)2v!cY*Qs?;8>dF*(fX(vsL2sRn)?7DW;SX~vtgPN05aP&J{b87Wuk#tc5+f? zqGLqjC8g$NKu4%8MjXmnAi>U(N@yQZ(Ep{dPF%-am4xYV#Vp;D5`0|U$f10)yKg{y z=5ziTr(8fB`EF6HAf9b|iBC6(Sa~E^CX% zF|~Lli18@)FK>W%%~nWjj7TC$xNYke_&PjpI40d_c~ps26?;I64Hz0d2k%tmVvh<) zsxlz!g)cCinvPqi-ooUWLr5!cfMo4f-ln%NofYgEa5+H>9_!L4ab8jf^=dO;XJC;O zHm4MZJbajt-2FC^k|z(kmZ59o*D_m=i0(D7sNoGD%Pk|%=`7^6T^>?bWsbk7!@>A$ zQFDhV6rE502Jo#tr8&%@)+k?&9Y|8y6cI*}wUFp72Z;KIKLk)6tLk}l*nA4y5 z-V@OSB~yUhH*HbD?E3p_Qe}EJD1E+EnU%G|sHbIfpbe@6qW4XOh@>hbQu5`v{;C3Z zt__O0K>NvF4qryQ# z!D!xn2}RZA$T(Yql|!#UBFW+Frpw>KWcxlO3{ypE3#8QF9-`YsffxvbT2Q7DTvP3P z9%WnB^T_lb>_lN+1)4Wo@J3Z59h|jcVVLg*RR>%Xc3iL?LnsOIn3R!2@(+#k8cGhR zq0%ku{WarTt6Od6HSylgLGu2SPlxOt3PViBF|vERm1JkiV(&6KnFUbWyFViO)52o( zLG94@5SqTZz>tuW`v03__|IX5ls+cdL{7&DDh=z<|G^13fBP%QcWC4s|7P|0vS+ZY zSc}WU7XM?SRIY=5QztLx<0rMaLDLmZso^e8^?d`^KZD5HeFD*xSwz z-B{hhYsyX`X*3`!QuCUL28Jo(vy4S*s{dQup~1{toQ37}3XJ}I5ffLg3VcT#Js7xj z3`>`&QAQ(^m0yIbvThvxa3kEe9EesVT1%tDkkwJ^pP!P<;)1Zg@=a?64G^Wp6j8iqK!FFd^s)KG*68&1!_eZ7>%Q#!75~MEI7Fea`Kx{W z)2E4HCr`xowOxrw|fdR2} zCE_*AY_lQYU6JMi01|yiWJ>_ZIKtGh9Mi96`tAcn7pChssKf69fBAcHCzcC900000 LNkvXXu0mjfha5=# literal 0 HcmV?d00001 diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-mdpi/icon.png b/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-mdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cfa450babe817931bf69501bbc52e84a1605828d GIT binary patch literal 1773 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 literal 0 HcmV?d00001 diff --git a/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-xxxhdpi/icon.png b/samples/MADE.Samples/MADE.Samples.Droid/Resources/mipmap-xxxhdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..696295cef3cb170d6621a0156f9cb8452dbb5df9 GIT binary patch literal 7485 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 Hu0mjf!KybN literal 0 HcmV?d00001 diff --git a/samples/MADE.Samples/MADE.Samples.Shared/Features/Home/ViewModels/MainPageViewModel.cs b/samples/MADE.Samples/MADE.Samples.Shared/Features/Home/ViewModels/MainPageViewModel.cs index c8b24c3..319915d 100644 --- a/samples/MADE.Samples/MADE.Samples.Shared/Features/Home/ViewModels/MainPageViewModel.cs +++ b/samples/MADE.Samples/MADE.Samples.Shared/Features/Home/ViewModels/MainPageViewModel.cs @@ -36,6 +36,10 @@ private static ICollection GetSampleGroups() "ChipBox", typeof(ChipBoxPage), "/Features/Samples/Assets/ChipBox/ChipBox.png"), + new Sample( + "DropDownList", + typeof(DropDownListPage), + "/Features/Samples/Assets/DropDownList/DropDownList.png"), new Sample( "FilePicker", typeof(FilePickerPage), diff --git a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListCode.txt b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListCode.txt new file mode 100644 index 0000000..cb8b293 --- /dev/null +++ b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListCode.txt @@ -0,0 +1,19 @@ +public ICommand SelectedItemsUpdateCommand => new RelayCommand>(selectedItems => this.OnSelectedItemsUpdated(selectedItems.Cast())); + +public ObservableCollection Items { get; } = new() +{ + "Red", + "Green", + "Blue", + "Cyan", + "Magenta", + "Yellow", + "White" +}; + +public ObservableCollection SelectedItems { get; } = new(); + +private void OnSelectedItemsUpdated(IEnumerable obj) +{ + this.SelectedItems.MakeEqualTo(obj); +} \ No newline at end of file diff --git a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListXaml.txt b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListXaml.txt new file mode 100644 index 0000000..6e82e0e --- /dev/null +++ b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/DropDownList/DropDownListXaml.txt @@ -0,0 +1,20 @@ + + + + + + diff --git a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/AppDialogPage.xaml b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/AppDialogPage.xaml index 773c26f..e943899 100644 --- a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/AppDialogPage.xaml +++ b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/AppDialogPage.xaml @@ -42,7 +42,7 @@ diff --git a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/ChipBoxPage.xaml b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/ChipBoxPage.xaml index e12dd78..f6f9104 100644 --- a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/ChipBoxPage.xaml +++ b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/ChipBoxPage.xaml @@ -43,7 +43,7 @@ @@ -66,8 +66,6 @@ Suggestions="{x:Bind ViewModel.ChipSuggestions}" Chips="{x:Bind ViewModel.SelectedChips}" TextChangeCommand="{x:Bind ViewModel.SuggestionTextChangeCommand}"/> - - diff --git a/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/DropDownListPage.xaml b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/DropDownListPage.xaml new file mode 100644 index 0000000..9d62b8e --- /dev/null +++ b/samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Pages/DropDownListPage.xaml @@ -0,0 +1,76 @@ + + + + + + + + + + +