public void SetDataSourceForeignKeyStringArray() { Grid mastergrid = new Grid(); mastergrid.ID = "test"; mastergrid.Page = Testpage; mastergrid.Mode = Mode.Edit; Testpage.Controls.Add(mastergrid); WebGrid.Columns.Foreignkey column = new WebGrid.Columns.Foreignkey("ForeignkeyItems", mastergrid); column.NullText = "Select Category"; column.Required = true; mastergrid.MasterTable.Columns.Add(column); WebGrid.Data.Table fktable = new WebGrid.Data.Table(mastergrid, true); string[] names = new[] { "Tom", "Dick", "Harry", "Thomas", "Anders", "Carl", "Trond", "Eli", "Eva" }; fktable.DataSource = names; ((WebGrid.Columns.Foreignkey)mastergrid["ForeignkeyItems"]).Table = fktable; StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter gridwriter = new HtmlTextWriter(sw); mastergrid.RenderControl(gridwriter); Assert.AreEqual(mastergrid.MasterTable.Rows.Count, 1); Assert.IsTrue(mastergrid.MasterTable.GotDataSourceSchema); Assert.AreEqual(((WebGrid.Columns.Foreignkey)mastergrid["ForeignkeyItems"]).Table.Rows.Count, names.Length); }
public void SetDataSourceForeignKeyGetDataForce() { Grid mastergrid = new Grid(); mastergrid.ID = "test"; mastergrid.Page = Testpage; mastergrid.DisplayView = DisplayView.Detail; Testpage.Controls.Add(mastergrid); Foreignkey column = new Foreignkey("ForeignkeyItems", mastergrid.MasterTable); column.NullText = "Select Category"; column.Required = true; mastergrid.MasterTable.Columns.Add(column); WebGrid.Data.Table fktable = new WebGrid.Data.Table(mastergrid, true); StringDictionary tmp = new StringDictionary(); tmp.Add("Category 1", "1"); tmp.Add("Category 2", "2"); tmp.Add("Category 3", "3"); tmp.Add("Category 4", "4"); tmp.Add("Category 5", "5"); tmp.Add("Category 6", "6"); tmp.Add("Category 7", "7"); fktable.DataSource = tmp; ((Foreignkey)mastergrid["ForeignkeyItems"]).Table = fktable; ((Foreignkey)mastergrid["ForeignkeyItems"]).ValueColumn = "Value"; StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter gridwriter = new HtmlTextWriter(sw); mastergrid.RenderControl(gridwriter); Assert.AreEqual(mastergrid.MasterTable.Rows.Count, 1); Assert.IsTrue(mastergrid.MasterTable.GotSchema); Assert.AreEqual(((Foreignkey)mastergrid["ForeignkeyItems"]).Table.Rows.Count, 7); ((Foreignkey)mastergrid["ForeignkeyItems"]).Table.FilterExpression = "Value = 3"; Assert.AreEqual(((Foreignkey)mastergrid["ForeignkeyItems"]).Table.Rows.Count, 1); }
public void SetDataSourceForeignKeyStringArray() { Grid mastergrid = new Grid(); mastergrid.ID = "test"; mastergrid.Page = Testpage; mastergrid.DisplayView = DisplayView.Detail; Testpage.Controls.Add(mastergrid); Foreignkey column = new Foreignkey("ForeignkeyItems", mastergrid.MasterTable); column.NullText = "Select Category"; column.Required = true; mastergrid.MasterTable.Columns.Add(column); WebGrid.Data.Table fktable = new WebGrid.Data.Table(mastergrid, true); string[] names = new[] { "Tom", "Dick", "Harry", "Thomas", "Anders", "Carl", "Trond", "Eli", "Eva" }; fktable.DataSource = names; ((Foreignkey)mastergrid["ForeignkeyItems"]).Table = fktable; StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter gridwriter = new HtmlTextWriter(sw); mastergrid.RenderControl(gridwriter); Assert.AreEqual(mastergrid.MasterTable.Rows.Count, 1); Assert.IsTrue(mastergrid.MasterTable.GotSchema); Assert.AreEqual(((Foreignkey)mastergrid["ForeignkeyItems"]).Table.Rows.Count, names.Length); }
public void SetDataSourceForeignKeyGetDataForce() { Grid mastergrid = new Grid(); mastergrid.ID = "test"; mastergrid.Page = Testpage; mastergrid.DisplayView = DisplayView.Detail; Testpage.Controls.Add(mastergrid); Foreignkey column = new Foreignkey("ForeignkeyItems", mastergrid.MasterTable); column.NullText = "Select Category"; column.Required = true; mastergrid.MasterTable.Columns.Add(column); WebGrid.Data.Table fktable = new WebGrid.Data.Table(mastergrid, true); StringDictionary tmp = new StringDictionary(); tmp.Add("Category 1", "1"); tmp.Add("Category 2", "2"); tmp.Add("Category 3", "3"); tmp.Add("Category 4", "4"); tmp.Add("Category 5", "5"); tmp.Add("Category 6", "6"); tmp.Add("Category 7", "7"); fktable.DataSource = tmp; ((Foreignkey)mastergrid["ForeignkeyItems"]).Table = fktable; ((Foreignkey)mastergrid["ForeignkeyItems"]).ValueColumn = "Value"; StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter gridwriter = new HtmlTextWriter(sw); mastergrid.RenderControl(gridwriter); Assert.AreEqual(mastergrid.MasterTable.Rows.Count, 1); Assert.IsTrue(mastergrid.MasterTable.GotSchema); Assert.AreEqual(((Foreignkey)mastergrid["ForeignkeyItems"]).Table.Rows.Count, 7); ((Foreignkey) mastergrid["ForeignkeyItems"]).Table.FilterExpression = "Value = 3"; Assert.AreEqual(((Foreignkey)mastergrid["ForeignkeyItems"]).Table.Rows.Count, 1); }