Как исправить ошибку "The name 'i' does not exist in the current context" ? - C#

Узнай цену своей работы

Формулировка задачи:

Как исправить ошибку "The name 'i' does not exist in the current context" в строке строке ? Если я правильно понял, то нужно по нормальному объявить переменную

"i"

Сценарий кода: 1. Извлекаем данные из базы данных (Ексель); 2. Вносим данные в браузер Chrome; Привожу код
using System;
using System.Linq;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
 
//****//
using OpenQA.Selenium;
using System.Diagnostics;
using OpenQA.Selenium.Chrome;
using System.IO;

namespace ExcelDb
{
    public partial class Form1 : Form
    {
        object[,] arrData; //объявляем двумерный массив (строки и столбцы)
        IWebDriver Browser;

        public Form1()
        {
            InitializeComponent();
        }
        
        private void Form1_Load(object sender, EventArgs e) 
        {
            string fileName = @"c:\Users\admin\Documents\Visual Studio 2015\Projects\03_PR\vr\01_kd ExcelDb\00_pr\excel\ExcelDb.xlsx"; //имя Excel файла  
            Excel.Application xlApp = new Excel.Application();  // Application - применение
            Excel.Workbook xlWb = xlApp.Workbooks.Open(fileName); //открываем Excel файл
            Excel.Worksheet xlSht = xlWb.Sheets["Лист1"]; //имя листа в файле      
            int iLastRow = xlSht.Cells[xlSht.Rows.Count, "A"].End[Excel.XlDirection.xlUp].Row;  //последняя заполненная строка в столбце А
            //var arrData = (object[,])xlSht.Range["A2:B" + iLastRow].Value; //берём данные со 2-й строки, если нужно с 1-й, то замените A2 на A1
            arrData = (object[,])xlSht.Range["A2:D" + iLastRow].Value; //берём данные со 2-й строки, если нужно с 1-й, то замените A2 на A1
            xlWb.Close(true);//закрываем файл и сохраняем изменения, если не сохранять, то false                
            xlApp.Quit(); //закрываем Excel
            for (int i = 1; i <= arrData.GetUpperBound(0); i++) //заполняем ComboBox данными из массива
            {
                this.comboBox1.Items.Add(arrData[i, 1]);
            }
        }
 
        private void groupBox2_Enter(object sender, EventArgs e)
        {
 
        }
 
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) // ####  ID (вводится ID записи в базе данных)
        {
           for (int i = 1; i <= arrData.GetUpperBound(0); i++)
            {
                if (this.comboBox1.Text == arrData[i, 1].ToString())
                {
                    this.textBox1.Text = arrData[i, 2].ToString();   // Передача данных в  textBox1 
                    this.textBox2.Text = arrData[i, 4].ToString();   // Передача данных в textBox3 
                    this.textBox3.Text = arrData[i, 3].ToString();   // Передача данных в  textBox2
                    return;
                }
            }
            
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
             
        }
 
        private void comboBox1_KeyUp(object sender, KeyEventArgs e)
        {
            if (this.comboBox1.Text == "")
            {
                this.textBox1.Text = "";
                return;
            }
 
            for (int i = 1; i <= arrData.GetUpperBound(0); i++)
            {
                if (this.comboBox1.Text == arrData[i, 1].ToString())
                {
                    this.textBox1.Text = arrData[i, 2].ToString();
                    return;
                }
            }
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)// ####  
        {
 
        }
        
        private void textBox2_TextChanged(object sender, EventArgs e)// ####  
        {
 
        }
        
        private void textBox3_TextChanged(object sender, EventArgs e)   /// ####  
        {
 
        }

        private void button2_Click(object sender, EventArgs e)
        {
            OpenQA.Selenium.Chrome.ChromeOptions co = new OpenQA.Selenium.Chrome.ChromeOptions();
            co.BinaryLocation = @"c:\soft\UD\GoogleChromePortable\1_1\GoogleChromePortable_1.exe";
            Browser = new OpenQA.Selenium.Chrome.ChromeDriver(co);

         Browser.Navigate().GoToUrl(arrData[i, 2].ToString()); //          
           
        }
 
    }

}

Решение задачи: «Как исправить ошибку "The name 'i' does not exist in the current context" ?»

textual
Листинг программы
        public Form1() // Конструктор класса (формы)
        private void Form1_Load(object sender, EventArgs e) // Обработчик события загрузки формы
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) // Обработчик события изменения выбора в combobox1
        private void comboBox1_KeyUp(object sender, KeyEventArgs e) // Обработчик события "отжатия" кнопки (т.е. вы нажали, а потом убрали и сработал этот обработчик)
 
      private void combobox_selectionChanged(object sender, KeyEventArgs e)
        {
            if ((sender as ComboBox).SelectedItem != null)
            ID = Convert.ToInt32((sender as ComboBox).SelectedItem.ToString());
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e) // Обработчик события изменения текстового поля textbox1 
        private void textBox3_TextChanged(object sender, EventArgs e) // Обработчик события изменения текстового поля textbox3
 
        private void button2_Click(object sender, EventArgs e) // Обработчик события нажатия (клика) по кнопке button2

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5
Похожие ответы