多选列表框绑定到 InfoPath 中的重复节点。因此,在您的代码中,您需要添加一个 MSList 节点,然后设置它的值。我相信你可以只附加节点来创建它的副本。这是一个粗略的代码示例来展示这个概念——这依赖于表单中存在的 field1 的一个实例(我的多选绑定到它),但希望至少能理解主要思想。
XPathNavigator option = this.MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:group1/my:field1", NamespaceManager);
this.MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:group1", NamespaceManager).AppendChild(option);
this.MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:group1/my:field1[1]", NamespaceManager).SetValue("Option 1");
this.MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:group1/my:field1[2]", NamespaceManager).SetValue("Option 2");