Пример #1
0
        private void Window_Initialized
        (
            object sender,
            EventArgs e
        )
        {
            string initialDatabase = null;

            using (IrbisConnection connection = GetConnection())
            {
                IniFile iniFile  = connection.IniFile;
                string  listFile = "dbnam1.mnu";
                if (!ReferenceEquals(iniFile, null))
                {
                    iniFile.GetValue("MAIN", "DBNNAMECAT", "dbnam1.mnu");
                    string ext = System.IO.Path.GetExtension(listFile);
                    if (string.IsNullOrEmpty(ext))
                    {
                        listFile += ".mnu";
                    }

                    initialDatabase = iniFile.GetValue("MAIN", "CURDBN", null);
                }

                databases = connection.ListDatabases(listFile);
                foreach (DatabaseInfo database in databases)
                {
                    DatabaseList.Items.Add(database);
                }
            }

            int initialIndex = 0;

            if (!string.IsNullOrEmpty(initialDatabase))
            {
                for (int i = 0; i < databases.Length; i++)
                {
                    if (initialDatabase.SameString(databases[i].Name))
                    {
                        initialIndex = i;
                        break;
                    }
                }
            }

            if (initialIndex >= 0 && initialIndex < databases.Length)
            {
                DatabaseList.SelectedIndex = initialIndex;
                object selectedItem = DatabaseList.SelectedItem;
                if (!ReferenceEquals(selectedItem, null))
                {
                    DatabaseList.ScrollIntoView(selectedItem);
                }
            }
        }
Пример #2
0
        private void KeyBox_TextChanged
        (
            object sender,
            TextChangedEventArgs e
        )
        {
            TextBox textBox = sender as TextBox;

            if (ReferenceEquals(textBox, null))
            {
                return;
            }

            string text = textBox.Text.Trim();

            if (string.IsNullOrEmpty(text))
            {
                return;
            }

            DatabaseInfo found = null;

            foreach (DatabaseInfo database in databases)
            {
                string name = database.Name;
                if (!string.IsNullOrEmpty(name))
                {
                    if (Contains(name, text))
                    {
                        found = database;
                        break;
                    }
                }

                string description = database.Description;
                if (!string.IsNullOrEmpty(description))
                {
                    if (Contains(description, text))
                    {
                        found = database;
                        break;
                    }
                }
            }

            if (!ReferenceEquals(found, null))
            {
                DatabaseList.SelectedItem = found;
                DatabaseList.ScrollIntoView(found);
            }
        }