将组合框作为参数传递给表单

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将组合框作为参数传递给表单相关的知识,希望对你有一定的参考价值。

所以我希望能够将组合框从一种形式传递到另一种形式,因为它是唯一保持不变的东西。当我这样做,传递正常,有正确的项目,但是当我打开下拉没有项目,任何想法为什么?

答案

嗯,我不知道为什么会这样,但你可能会尝试做的是:不要只是传递整个组合框,只需传入上一个组合框中的项目,然后在表单上创建一个新的组合框正试图将其传递给,然后使用您之前作为参数传入的项目填充它。希望这可以帮助!

另一答案

我现在尝试这样做,它现在包含应该的项目

foreach (var loc in locations.Items)
    Location_Selector.Items.Add(loc.ToString());

Location_Selector.SelectedIndex = locations.SelectedIndex;

但只是将一个组合框设置为等于另一个组合框不起作用,这对我没有意义

Location_Selector = locations;
另一答案

传递这样的项目可能更容易:

        List<String> items = new List<string>();
        items.AddRange(comboBox1.Items.Cast<String>());
        int index = comboBox1.SelectedIndex;

        Form2 form2 = new Form2();
        form2.comboBox1.Items.AddRange(items.ToArray<object>());
        form2.comboBox1.SelectedIndex = index;
        form2.Show();

因此,您将项目列表,然后访问下一个表单上的组合框并将列表添加到其中。这也将复制所选索引。您可以复制ComboBox,但只复制项目更实用。

以上是关于将组合框作为参数传递给表单的主要内容,如果未能解决你的问题,请参考以下文章

如何将从表单提交中检索到的参数作为参数传递给 django 中的函数

如何将 pandas 数据框作为参数传递给 matplotlib 库方法 plot

PySpark - 将列表作为参数传递给 UDF + 迭代数据框列添加

将列名作为参数传递给 Redshift 中的“PREPARE”的问题

从 DoCmd.OpenReport 将参数传递给 Access 2010 报告

将多列作为参数传递给函数,并从函数中为python中的数据框获取新列