我是C#的新手,我想練習使用參數的技能,但是我遇到了一些麻煩。我正在設計一個系統,當學生點擊'view'按鈕時,系統應該從數據庫中查看每個問題。傳遞按鈕作爲參數在C#
目的:
我想要實現的是,當用戶點擊該按鈕被標記爲「下一個」。該系統應該'查看;數據網格上的下一個問題。我想也許我應該做一個查詢說,像「選擇問題來自... where questionID = btnView。也許有一個函數,每當用戶點擊按鈕時,它將1,2,3 ... 10作爲questionID (因爲有10個問題)
這是我的C#代碼:
try
{
string mydbConnection = "datasource=localhost;port=3306;Initial Catalog=project;username=***;password=***;";
MySqlConnection connDB = new MySqlConnection(mydbConnection);
MySqlCommand cmdDataBase = new MySqlCommand("SELECT questions.question, questions.answer FROM questions WHERE questionID ='" + questionID + "' ;",connDB);
connDB.Open();
MySqlDataAdapter sda = new MySqlDataAdapter();
sda.SelectCommand = cmdDataBase;
DataTable dbdataset = new DataTable();
sda.Fill(dbdataset);
BindingSource bSource1 = new BindingSource();
sda.Update(dbdataset);
bSource1.DataSource = dbdataset;
dataGridView1.DataSource = bSource1;
sda.Update(dbdataset);
this.dataGridView1.Columns[3].Visible = false;
this.dataGridView1.Columns[0].Visible = false;
connDB.Close();
}
,這是我的按鈕功能讓每一個 'questionID'
private void button1_Click(object sender, EventArgs e)
{
for (int i = 1; i >= 10; i++)
{
int questionID = i;
}
viewQuestion(questionID);
}
questionID不存在當前上下文。
注:
上DataGrid中的東西的作品我只是希望它當用戶點擊按鈕查看每一個問題。
編輯:
int questionID = 0;
for (int i = 1; i >= 10; i++)
{
int questionID = i;
}
viewQuestion(questionID);
原因:
本地或命名爲「questionID」不能在此範圍中聲明因爲其名稱是在一個封閉的局部範圍用於定義一個局部參數或參數
有關的,你應該讀作[微軟.NET的變量和方法適用範圍]變量可訪問性(更多信息https://msdn.microsoft.com/en-us/庫/ ms973875.aspx) –