public static void WriteListOfList()
        {
            var input = new List <List <int> >
            {
                new List <int>()
                {
                    1, 2
                },
                new List <int>()
                {
                    3, 4
                }
            };

            string json = JsonSerializer.Serialize(input);

            Assert.Equal("[[1,2],[3,4]]", json);

            var input2 = new GenericListWrapper <StringListWrapper>
            {
                new StringListWrapper()
                {
                    "1", "2"
                },
                new StringListWrapper()
                {
                    "3", "4"
                }
            };

            json = JsonSerializer.Serialize(input2);
            Assert.Equal(@"[[""1"",""2""],[""3"",""4""]]", json);
        }
        public async Task WriteListOfList()
        {
            var input = new List <List <int> >
            {
                new List <int>()
                {
                    1, 2
                },
                new List <int>()
                {
                    3, 4
                }
            };

            string json = await JsonSerializerWrapperForString.SerializeWrapper(input);

            Assert.Equal("[[1,2],[3,4]]", json);

            var input2 = new GenericListWrapper <StringListWrapper>
            {
                new StringListWrapper()
                {
                    "1", "2"
                },
                new StringListWrapper()
                {
                    "3", "4"
                }
            };

            json = await JsonSerializerWrapperForString.SerializeWrapper(input2);

            Assert.Equal(@"[[""1"",""2""],[""3"",""4""]]", json);
        }
        public static void ReadListOfArray()
        {
            List <int[]> result = JsonSerializer.Deserialize <List <int[]> >(Encoding.UTF8.GetBytes(@"[[1,2],[3,4]]"));

            Assert.Equal(1, result[0][0]);
            Assert.Equal(2, result[0][1]);
            Assert.Equal(3, result[1][0]);
            Assert.Equal(4, result[1][1]);

            GenericListWrapper <string[]> result2 = JsonSerializer.Deserialize <GenericListWrapper <string[]> >(@"[[""1"",""2""],[""3"",""4""]]");

            Assert.Equal("1", result2[0][0]);
            Assert.Equal("2", result2[0][1]);
            Assert.Equal("3", result2[1][0]);
            Assert.Equal("4", result2[1][1]);
        }
        public async Task ReadListOfArray()
        {
            List <int[]> result = await Serializer.DeserializeWrapper <List <int[]> >(@"[[1,2],[3,4]]");

            Assert.Equal(1, result[0][0]);
            Assert.Equal(2, result[0][1]);
            Assert.Equal(3, result[1][0]);
            Assert.Equal(4, result[1][1]);

            GenericListWrapper <string[]> result2 = await Serializer.DeserializeWrapper <GenericListWrapper <string[]> >(@"[[""1"",""2""],[""3"",""4""]]");

            Assert.Equal("1", result2[0][0]);
            Assert.Equal("2", result2[0][1]);
            Assert.Equal("3", result2[1][0]);
            Assert.Equal("4", result2[1][1]);
        }
 /// <summary>
 /// See base docs.
 /// </summary>
 protected override void DoCopyModelToControl()
 {
     if (!_MasterListUpdatesLocked)
     {
         _MasterListUpdatesLocked = true;
         try {
             var modelList = ModelList;
             if (_IList == null || !Object.ReferenceEquals(modelList, _IList.GenericList))
             {
                 _IList = new GenericListWrapper <TListModel>(modelList);
             }
             Control.List = _IList;
             Control.RefreshList();
         } finally {
             _MasterListUpdatesLocked = false;
         }
     }
 }
示例#6
0
        /// <summary>
        /// See base class docs.
        /// </summary>
        /// <param name="e"></param>
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            if (!DesignMode)
            {
                Localise.Control(this);

                var defaultAccesses = Enum.GetValues(typeof(DefaultAccess)).OfType <DefaultAccess>().ToArray();
                _DefaultAccessItems = new ItemDescriptionList <DefaultAccess>(defaultAccesses, r => Describe.DefaultAccess(r));
                foreach (var item in _DefaultAccessItems)
                {
                    comboBoxDefaultAccess.Items.Add(item);
                }
                CopyDefaultAccessToControl();

                _AddressesWrapper       = new GenericListWrapper <string>(Addresses);
                _Addresses.ListChanged += Addresses_ListChanged;
                CopyAddressesToControl();
            }
        }