C# 如何从listbox c刷新标签值

C# 如何从listbox c刷新标签值,c#,label,refresh,C#,Label,Refresh,大家好,我正在寻找有关我的代码的任何帮助,我需要解决从列表框刷新标签中的值的问题。我用他的数据、比赛等来研究球员。。我想看看他在比赛中的具体得分,我可以从列表框中选择,看看他在我交换比赛时的死伤情况,有人知道吗?谢谢你的关注。对不起我的英语。Lanky是Lans,Jménohráče是名字,Věk是年龄,Země是国家。波切特·基鲁意味着死亡数,另一个意味着死亡数,维克尔·奥德兰奇意味着他所有的比赛 private void listBox1_SelectedIndexChanged(objec

大家好,我正在寻找有关我的代码的任何帮助,我需要解决从列表框刷新标签中的值的问题。我用他的数据、比赛等来研究球员。。我想看看他在比赛中的具体得分,我可以从列表框中选择,看看他在我交换比赛时的死伤情况,有人知道吗?谢谢你的关注。对不起我的英语。Lanky是Lans,Jménohráče是名字,Věk是年龄,Země是国家。波切特·基鲁意味着死亡数,另一个意味着死亡数,维克尔·奥德兰奇意味着他所有的比赛

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    connection = new SqlConnection(connectionstring);
    try
    {
        connection.Open();
        var q = "SELECT * FROM Lanky";
        var query = new SqlCommand(q, connection);
        using (var dr = query.ExecuteReader())
        {
            var success = dr.Read();
            if (success)
            {
                label8.Text = dr["Kills"].ToString();
                label9.Text = dr["Deaths"].ToString();
                label1.Text = dr["Jménohráče"].ToString();
                label2.Text = dr["Věk"].ToString();
                label3.Text = dr["Země"].ToString();

            }
        }
        connection.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show("error " + ex);
    }

}

[

应该有一个方法填充listbox,另一个方法在listbox select上激发。您已经在listbox changed事件中放置了数据检索。请执行以下操作:

 private void Form1_Load(object sender, EventArgs e)
        {
            connection = new SqlConnection(connectionstring);
            try
            {
                connection.Open();
                var q = "SELECT * FROM Lanky";
                var query = new SqlCommand(q, connection);
                using (var dr = query.ExecuteReader())
                {

                    ListBox1.Items.Clear();
                    while (dr.Read())
                    {
                        ListBox1.Items.Add(dr["Jménohráče"]);
                    }
                }

                connection.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("error " + ex);
            }

        }
private void ListBox1_SelectedItemChanged(object sender, EventArgs e)
{
    connection = new SqlConnection(connectionstring);
    try
    {
        connection.Open();
        var q = "SELECT * FROM Lanky WHERE Jménohráče  = @jh";
        var query = new SqlCommand(q, connection);
        query.Parameters.Add("@jh", ListBox1.SelectedValue.ToString())
        using (var dr = query.ExecuteReader())
        {

            ListBox1.Items.Clear();
            dr.Read();

            label8.Text = dr["Kills"].ToString();
            label9.Text = dr["Deaths"].ToString();
            label1.Text = dr["Jménohráče"].ToString();
            label2.Text = dr["Věk"].ToString();
            label3.Text = dr["Země"].ToString();

        }

        connection.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show("error " + ex);
    }

}
首先,将代码从listbox1\u SelectedItemChanged移动到Form\u Load event,如下所示:

 private void Form1_Load(object sender, EventArgs e)
        {
            connection = new SqlConnection(connectionstring);
            try
            {
                connection.Open();
                var q = "SELECT * FROM Lanky";
                var query = new SqlCommand(q, connection);
                using (var dr = query.ExecuteReader())
                {

                    ListBox1.Items.Clear();
                    while (dr.Read())
                    {
                        ListBox1.Items.Add(dr["Jménohráče"]);
                    }
                }

                connection.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("error " + ex);
            }

        }
private void ListBox1_SelectedItemChanged(object sender, EventArgs e)
{
    connection = new SqlConnection(connectionstring);
    try
    {
        connection.Open();
        var q = "SELECT * FROM Lanky WHERE Jménohráče  = @jh";
        var query = new SqlCommand(q, connection);
        query.Parameters.Add("@jh", ListBox1.SelectedValue.ToString())
        using (var dr = query.ExecuteReader())
        {

            ListBox1.Items.Clear();
            dr.Read();

            label8.Text = dr["Kills"].ToString();
            label9.Text = dr["Deaths"].ToString();
            label1.Text = dr["Jménohráče"].ToString();
            label2.Text = dr["Věk"].ToString();
            label3.Text = dr["Země"].ToString();

        }

        connection.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show("error " + ex);
    }

}
接下来,在selectedItem changed中执行以下操作:

 private void Form1_Load(object sender, EventArgs e)
        {
            connection = new SqlConnection(connectionstring);
            try
            {
                connection.Open();
                var q = "SELECT * FROM Lanky";
                var query = new SqlCommand(q, connection);
                using (var dr = query.ExecuteReader())
                {

                    ListBox1.Items.Clear();
                    while (dr.Read())
                    {
                        ListBox1.Items.Add(dr["Jménohráče"]);
                    }
                }

                connection.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("error " + ex);
            }

        }
private void ListBox1_SelectedItemChanged(object sender, EventArgs e)
{
    connection = new SqlConnection(connectionstring);
    try
    {
        connection.Open();
        var q = "SELECT * FROM Lanky WHERE Jménohráče  = @jh";
        var query = new SqlCommand(q, connection);
        query.Parameters.Add("@jh", ListBox1.SelectedValue.ToString())
        using (var dr = query.ExecuteReader())
        {

            ListBox1.Items.Clear();
            dr.Read();

            label8.Text = dr["Kills"].ToString();
            label9.Text = dr["Deaths"].ToString();
            label1.Text = dr["Jménohráče"].ToString();
            label2.Text = dr["Věk"].ToString();
            label3.Text = dr["Země"].ToString();

        }

        connection.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show("error " + ex);
    }

}

您好,在列表框中有一个处理更改事件的选项,因此实现该函数,在该函数中,您可以基于此获取选定值您必须更新标签您的查询应该类似于SELECT*FROM Lanky,其中MatchId=+id;id来自listBox1.SelectedItem.Ye,但任何人都知道如何更改值标签中的es?因为我可以看到12个死亡和10个死亡,但当我单击NHL时,标签仍然不会更改12/10…但在我的数据库中,NHL中有20个KIL和12个死亡匹配。您可以将Listbox AutoPostBack属性更改为True。如果不希望页面回发,请使用scriptmanager。