我一直在嘗試不同的方法來解決這個問題,但我還沒有找到一個可靠的解決方案來解決我的問題。問題是我必須重新加載表單,以防第一次啓動應用程序,並且由於網絡或SQL連接問題導致組件未填滿。截至目前,每個人都在關閉應用程序並重新開始,因爲他們第一次啓動應用程序時組件是空的。我需要重新加載窗體上的按鈕點擊
以下是我正在使用的代碼。
private void Reports_Load(object sender, EventArgs e)
{
//START:
try
{
RevenueDate_dt = func.getResult(dateQuery);
foreach (DataRow dr in RevenueDate_dt.Rows)
{
comboBox1.Items.Add(dr["Global_Period_Month"].ToString());
}
}
catch (Exception ex)
{
//goto START;
MessageBox.Show("Network is too slow! Please close the application and try again later");
}
}
功能:
public DataTable getResult(string query)
{
//con.Open();
SqlDataAdapter da = new SqlDataAdapter();
DataTable dt = new DataTable();
SqlCommand cmd = new SqlCommand(query, con);
cmd.CommandTimeout = 0;
da.SelectCommand = cmd;
da.Fill(dt);
return dt;
}
我已經把我的形式重試按鈕,如果第一時間的成分中不填充數據,這樣每個人都可以使用重試按鈕加載組件,而不是關閉整個應用程序並重新開始。
(你的意思「而不是」,而不是「儘管」,即「使每個人都可以使用重試按鈕,而不是加載關閉整個應用程序,並重新開始的組成部分」? )...所以,你有一個按鈕點擊事件處理程序的方法? – criticalfix
我會專注於網絡問題,特別是因爲這看起來像本地網絡。 – LarsTech
@criticalfix是的,而不是...... umm不,我沒有按鈕點擊事件處理程序的方法。 –