我在C#中有一個WinForm應用程序,我需要隱藏一些文本框和標籤,具體取決於以前窗體中選擇的項目。 我禁用了設計器中的文本框和標籤,並會根據SQL表中的值再次使它們可見。 我的代碼是這一個,但我不知道如何檢查值。從SQL中檢查值以啓用文本框和標籤
private void build_Load(object sender, EventArgs e)
{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select prumos from dbo.modelos";
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
var check = dr["prumos"].ToString();
textBox13.Visible = check == "2";
textBox18.Visible = check == "2";
textBox17.Visible = check == "2";
label16.Visible = check == "2";
return;
}
}
else
{
//var check = dr["prumos"].ToString();
//textBox13.Visible = check == "3";
//textBox18.Visible = check == "3";
//textBox17.Visible = check == "3";
//textBox14.Visible = check == "3";
//textBox16.Visible = check == "3";
//textBox15.Visible = check == "3";
//label16.Visible = check == "3";
//label20.Visible = check == "3";
//return;
}
con.Close();
我也想申請一個else if
,這樣如果id爲2 ...一些文本框出現,ifthe id爲3 ...更多的他們出現。
任何人都可以幫忙,
在此先感謝。
我認爲這是完美的,但是當我應用代碼時,我得到錯誤:_Invalid read attempt when data is present present__ in the line'var check = dr [「prumos」]。ToString();' thable有數據。 – MarcIT
現在我沒有錯誤,但我失去了與數據庫的連接,我將編輯上面的代碼到新版本。 你可以看看嗎? 感謝您的幫助 – MarcIT
@MarcIT我剛測試過它。它可以在我的電腦上正常工作。讀取值之後關閉Reader和Connection? – Badiparmagi