C# 将combobox选定项设置为其他表单中combobox的默认项

C# 将combobox选定项设置为其他表单中combobox的默认项,c#,winforms,combobox,C#,Winforms,Combobox,我有一个手持设备的winforms项目,其中我有多个表单,我有一个表单为另一个表单设置默认选项,例如,默认表单上有一个组合框,用于填充xml的位置。我想做的是,当用户从defaults表单的下拉列表中选择一个位置并点击save时,我需要将所选位置设置为主表单上的defaultshow first //Main Form private void Form1_Load(object sender, EventArgs e) { string filePath = "/My Documen

我有一个手持设备的winforms项目,其中我有多个表单,我有一个表单为另一个表单设置默认选项,例如,默认表单上有一个组合框,用于填充xml的位置。我想做的是,当用户从defaults表单的下拉列表中选择一个位置并点击save时,我需要将所选位置设置为主表单上的defaultshow first

//Main Form 
private void Form1_Load(object sender, EventArgs e)
{
    string filePath = "/My Documents/AHWLtTables.txt";
    dataSet1.ReadXml(filePath);


    comboBox2.DataSource = dataSet1.Tables[8];
    comboBox2.ValueMember = "Loc";
    comboBox2.DisplayMember = "Desc";
}
这将用xml数据填充组合框,我知道我可以使用SelectedIndex从列表中设置默认值。我只是不知道如何在默认选项表单中保存所选内容的索引,并将其设置为主表单中的索引。
或者我的做法是错误的,我应该让数据集成为所有表单的公共对象,并以某种方式调用它吗

如何访问第二个表单?。您可以使用属性将参数发送到另一个表单。它是任何类型的变量。使用get和set方法,您可以在第二个表单中声明属性:

public int indexCombo {get; set;}
当您调用表单时,请使用以下内容:

    Form2 myForm2 as Form2();

    myForm2.indexCombo = comboBox2.selectedIndex; //I won't remember exactly the method XD sorry
//As you see first make the instace of the form and second set the value of the property

    myForm2.show();
最后,要在加载表单时在新表单中显示所选索引,请执行以下操作:

comboBoxForm2.selectedIndex = indexCombo;

您可以向xml文件添加一个标记,以保存组合框的索引。将标记添加到文件很简单。您只需进入该文件并执行此操作。你只需要在你的c代码中弥补这一点。这里有一篇好文章

谢谢,我还没有完全弄明白,这里没有,但我想这就是我错过的东西。简短而简单,我喜欢!虽然我不太熟悉xml,但它使用的文件是从数据库生成的,然后通过主动同步加载到设备上。我假设我仍然可以添加这个标签?如果你认为答案正确,请接受下面的答案。