有没有像C#中的Bundle一样的东西?

时间:2012-03-11 01:28:18

标签: c# android bundle

我正在使用c#开发一个项目,我需要像android这样的bundle。有什么建议吗?

编辑: 我认为捆绑并不是每个人都清楚的。它像Dictionary一样工作,但你可以在其中放入几乎任何东西(字符串,整数,对象......),并根据键搜索你想要的东西。

4 个答案:

答案 0 :(得分:2)

如果你想要一本可以放任何东西的字典,你只需要意识到C#中的任何东西(极少数例外)都是object。所以,只需创建Dictionary<string, object>

但我会建议你尝试提出更好的解决方案。关于C#的一个好处是它是类型安全的。在这里,你试图解决这个问题,这可能导致错误。

答案 1 :(得分:1)

虽然您可能应该使用与强类型语言更加一致的结构......

看起来您需要dynamic个对象或Dictionary<String, Object>甚至Dictionary<Object, Object>

答案 2 :(得分:1)

Bundle不是“只是在方法之间传递值”。它是一种跨越流程边界移动数据的机制。方法和概念都是特定于Android的。要模拟它,您需要一些实现对象的映射,而可以由在另一个进程中运行的代码使用,包括远程进程。我无法提供更多建议,因为处理这种情况是我所不知道的。

欢迎您在开源中阅读Bundle的定义。

答案 3 :(得分:0)

我无法确切地说出你要完成的是什么,但据我所知,你试图将值从一个窗体传递到另一个窗体。如果您正在尝试这样做,那么您可以这样做:

// Example objects
Object myObject;
String myString;
Form1 myForm = new Form1(myObjects, myString);
myForm.show();

在C#中,您将变量传递到另一个表单中,就像您对类一样。您可以在Form1类的构造函数中添加特定参数,然后在要显示Form1时,使用要传递到表单的变量初始化新表单。