private void DoBinding2() { ImageList ilist = GetImageList(); Table table = this.table; // The Table control on a form - already initialised table.BeginUpdate(); table.SelectionStyle = SelectionStyle.ListView; table.EnableWordWrap = false; // If false, then Cell.WordWrap is ignored table.GridLines = GridLines.None; int h = table.RowHeight; table.DataMember = ""; MyBinder binder = new MyBinder(ilist, this.Font); table.DataSourceColumnBinder = binder; table.DataSource = GetDataSource(); //table.ColumnModel.Columns[0].Width = 60; ////table.ColumnModel.Columns[1].Width = 40; //table.ColumnModel.Columns[2].Width = 120; //table.ColumnModel.Columns[3].Width = 120; //table.ColumnModel.Columns[4].Width = 60; table.ColumnModel.Columns["name"].Width = 60; ComboBoxColumn combo = table.ColumnModel.Columns["name"] as ComboBoxColumn; if (combo != null) { ComboBoxCellEditor editor = new ComboBoxCellEditor(); //editor.SelectedIndexChanged += new EventHandler(editor_SelectedIndexChanged); //editor.EndEdit += new XPTable.Events.CellEditEventHandler(editor_EndEdit); combo.Editor = editor; } //table.ColumnModel.Columns[1].Width = 40; table.ColumnModel.Columns["date"].Width = 120; table.ColumnModel.Columns["colour"].Width = 120; table.ColumnModel.Columns["like them?"].Width = 60; table.BeginEditing += new XPTable.Events.CellEditEventHandler(table_BeginEditing); table.EditingStopped += new XPTable.Events.CellEditEventHandler(table_EditingStopped); this.table.EndUpdate(); this.table.TableModel.RowHeight = 40; }
public void TypeNameHandlingAuto() { var binder = new MyBinder(); var settings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto, Binder = binder }; Zoo zoo = new Zoo { Animals = new List<Animal> { new Dog("Dog!") } }; JsonSerializer serializer = JsonSerializer.Create(settings); MemoryStream ms = new MemoryStream(); BsonWriter bsonWriter = new BsonWriter(ms); serializer.Serialize(bsonWriter, zoo); ms.Seek(0, SeekOrigin.Begin); var deserialized = serializer.Deserialize<Zoo>(new BsonReader(ms)); Assert.AreEqual(1, deserialized.Animals.Count); Assert.AreEqual("Dog!", deserialized.Animals[0].Name); Assert.IsTrue(deserialized.Animals[0] is Dog); #if !(NET20 || NET35) Assert.IsTrue(binder.BindToNameCalled); #endif Assert.IsTrue(binder.BindToTypeCalled); }