protected void ShowProductionServices() { Util util = new Util(); Hashtable State = (Hashtable)HttpRuntime.Cache[Session.SessionID]; ArrayList PaidServices = util.GetPaidServices(State); State["PaidServices"] = PaidServices; if (PaidServices == null || PaidServices.Count == 0) return; DataTable ServiceTable = new DataTable(); ServiceTable.Columns.Add("Paid Service"); ServiceTable.Columns.Add("Associated App"); ServiceTable.Columns.Add(" "); foreach (string[] PaidService in PaidServices) { DataRow row = ServiceTable.NewRow(); row.ItemArray = PaidService; ServiceTable.Rows.Add(row); } ProductionServices.DataSource = ServiceTable; ProductionServices.DataBind(); int index = 0; Init init = new Init(); foreach (GridDataItem row in ProductionServices.Items) { string[] service = (string[])PaidServices[index]; if (service[1] == null || service[1].Length == 0) { RadComboBox box = new RadComboBox(); box.SelectedIndexChanged += new RadComboBoxSelectedIndexChangedEventHandler(box_SelectedIndexChanged); box.AutoPostBack = true; box.ID = "ServiceApp." + index.ToString(); box.Width = Unit.Pixel(200); init.InitAppsListNoDefault(State, box); row.Cells[3].Controls.Add(box); } else { ImageButton delete_button = new ImageButton(); delete_button.ImageUrl = "~/images/delete_small.gif"; delete_button.ID = "remove." + index.ToString(); delete_button.ToolTip = "Remove this service from this app"; delete_button.Click += new ImageClickEventHandler(delete_button_Click); delete_button.Attributes.Add("onclick", "return confirm('Are you sure you want to remove this app from this service?');"); row.Cells[4].Controls.Add(delete_button); } index++; } }