private void ucDefault1_BeforeDataLoad(object sender, EventArgs e) { this.dataContext = new Database.MenuDataContext(modulData.SqlConnection); this.ucDefault1.DataContext = this.dataContext; this.tsysClientBindingSource.DataSource = this.dataContext.tsysClient; this.tsysClientElementBindingSource.DataSource = this.SelectedClient; }
/// <summary> /// /// </summary> /// <param name="aceClient"></param> public void AddClients(AccordionControlElement aceClient) { // Lese aus der Datenbank alle Mandanten aus this.context = new Database.MenuDataContext(this.sqlConnection); var clientQuery = from client in context.tsysClient orderby client.SortOrder select client; // Falls keine Mandanten in der Datenbank hinterlegt sind, ist nichts zu tun if (clientQuery == null || clientQuery.Count() == 0) { return; } foreach (Database.tsysClient client in clientQuery) { AccordionControlElement clientItem = new AccordionControlElement() { Text = client.Name, Style = ElementStyle.Item }; clientItem.ImageOptions.Image = Converter.GetImageFromBinary(client.Image); clientItem.Click += Client_Click; if (this.TestConnection(client)) { this.clients.Add(clientItem, new Client(client.PKClient, new SqlConnection(GetSqlConnectionStringBuilder(client).ConnectionString), client.Name)); } else { // Falls Verbindung zur Datenbank nicht möglich ist, dann Item auf enabled = false setzen. clientItem.Enabled = false; clientItem.Text = client.Name + " (No connection to database)"; } aceClient.Elements.Add(clientItem); } if (this.clients.Count() > 0) { Client client = clients.ToArray()[0].Value as Client; this.AddMenu(client); ClientChanged?.Invoke(client); } }
private void AddMenu(Client client) { if (this.accordionControl == null) { return; } this.menuItems = new List <MenuItem>(); this.accordionControl.BeginUpdate(); this.accordionControl.Elements.Clear(); this.context = new Database.MenuDataContext(this.sqlConnection); this.CreateMenu(client, null, null); this.AddSettingsItem(); this.accordionControl.EndUpdate(); if (this.menuItems.Count > 0) { OnMenuItemClick(this.menuItems[0]); } }