Как исправить ошибку "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
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д