Beispiel #1
0
 private void lbCount_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
 {
     if (lbCount.SelectedItem != null)
     {
         selectedCount = (CheckedParam)lbCount.SelectedItem;
     }
 }
Beispiel #2
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            if (lbDataBases.SelectedItem == null)
            {
                new Service.MessageView("Выберите базу данных", "", Service.MessageViewMode.Message).Show();
                return;
            }
            wb.NavigateToString("<html></html>");
            string dbFileName = EnvPath + lbDataBases.SelectedItem.ToString() + ".sqlite";

            try {
                if (dbConn.State != ConnectionState.Closed)
                {
                    dbConn.Close();
                }
                dbConn = new SQLiteConnection("Data Source=" + dbFileName + ";Version=3;");
                dbConn.Open();
                sqlCmd.Connection = dbConn;
            } catch (Exception ex) {
                Service.Log.LogWrite(EnvPath, "Ошибка подключения к базе данных", ex.ToString());
            }
            try {
                sqlCmd.CommandText = "Select name From sqlite_master where type='table' order by name;";
                SQLiteDataReader dataReader = sqlCmd.ExecuteReader();
                DataTable        dt         = new DataTable();
                dt.Load(dataReader);
                List <CheckedParam> listLength = new List <CheckedParam>();
                List <CheckedParam> listCount  = new List <CheckedParam>();
                try {
                    foreach (DataRow row in dt.Rows)
                    {
                        if (row.ItemArray[0].ToString() == "sqlite_sequence" || row.ItemArray[0].ToString() == "works" || row.ItemArray[0].ToString().Split('|')[1] == "шт")
                        {
                            continue;
                        }
                        listLength.Add(new CheckedParam {
                            Title     = row.ItemArray[0].ToString().Split('|')[0],
                            Unit      = row.ItemArray[0].ToString().Split('|')[1],
                            IsChecked = false
                        });
                    }

                    foreach (DataRow row in dt.Rows)
                    {
                        if (row.ItemArray[0].ToString() == "sqlite_sequence" || row.ItemArray[0].ToString() == "works" || row.ItemArray[0].ToString().Split('|')[1] != "шт")
                        {
                            continue;
                        }
                        listCount.Add(new CheckedParam {
                            Title     = row.ItemArray[0].ToString().Split('|')[0],
                            Unit      = row.ItemArray[0].ToString().Split('|')[1],
                            IsChecked = false
                        });
                    }
                } catch (Exception ex) {
                    new Service.MessageView("Нарушена структура базы данных", "Ошибка", Service.MessageViewMode.Error).Show();
                    return;
                }

                if (listLength.Count == 0)
                {
                    new Service.MessageView("В базе данные нет параметра длины трубы", "Ошибка", Service.MessageViewMode.Error).Show();
                    return;
                }
                if (listCount.Count == 0)
                {
                    new Service.MessageView("В базе данные нет параметра кол-ва труб", "Ошибка", Service.MessageViewMode.Error).Show();
                    return;
                }

                lbLength.ItemsSource = listLength;
                lbCount.ItemsSource  = listCount;
                btnRead.IsEnabled    = true;
                selectedLength       = null;
                selectedCount        = null;
                FillingParamsData();

                lbLength.SelectedIndex = 0;
                lbCount.SelectedIndex  = 0;
            } catch (Exception ex) {
                Service.Log.LogWrite(EnvPath, "Ошибка подключения к базе данных", ex.ToString());
            }
        }