为了账号安全,请及时绑定邮箱和手机立即绑定

C# 立即使用组合框条目

C# 立即使用组合框条目

C#
慕村9548890 2021-11-07 20:23:48
简单地说,我想在ComboBox选择它后立即使用它的值来更改表单中的其他一些值。问题是,当我使用此方法终止后comboBox1_SelectedIndexChanged() ,框的值会更新。所以如果我把我的方法放在那里,它会得到“”作为参数。changeSomeOtherStuff(comboBox1.SelectedItem)一种解决方法是插入另一个启动该方法的按钮。但是必须有一种有效的方法来立即调用具有选定值的函数,对吗?
查看完整描述

2 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

您可以使用组合框的 SelectionChanged 事件,在此方法中您可以使用 combobox.text 或所选项目。

希望这对你有帮助。


查看完整回答
反对 回复 2021-11-07
?
心有法竹

TA贡献1866条经验 获得超5个赞

通过启动一个新线程并让它休眠 10 毫秒来解决它,以便另一个线程完成运行该方法并更新框:


private void comboBox1_DropdownClosed(object sender, EventArgs e)

{

    Thread t = new Thread(updateBox);

    t.Start();



}



private void updateBox()

{

    Task.Delay(10);

    Invoke(new Action(() =>

    {

        textBox1.Text = Defaults.Defaults.DefaultOutputContainer(comboBox1.Text);

    }));


}

Invoke 部分是为了能够访问comboBox1,即使它属于主线程。


查看完整回答
反对 回复 2021-11-07
  • 2 回答
  • 0 关注
  • 168 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信