c# - 如何在 monotuch 中从 PerformSegue 传递数据

标签 c# ios ios5 xamarin.ios

我有表源类,在行上单击我正在调用下面的函数以移动到另一个 Controller ,但我想传递一些数据。

controller.PerformSegue("backtorootviewsague",controller);

有谁知道我怎样才能实现它。我是 monotouch 和 ios 的新手。我不知道如何实现这一目标。

最佳答案

PrepareForSegue 是执行此操作的正确位置。例如,如果创建的 Controller CustomerViewController 被称为 CustomerListViewController,在 CustomerListViewController 中覆盖该方法,如下所示:

public override void PrepareForSegue (UIStoryboardSegue segue, NSObject sender)
{
    base.PrepareForSegue (segue, sender);

    // do first a control on the Identifier for your segue
    if (segue.Identifier.Equals("your_identifier")) {

        var viewController = (CustomerViewController)segue.DestinationViewController;
        viewController.MyData = dataToInject;
    }
}

其中 CustomerViewController 具有如下所示的公共(public)属性:

public SomeTypeData MyData { get; set; }

您可以在 Xamarin samples 中看到这一点。 .

希望对您有所帮助。

关于c# - 如何在 monotuch 中从 PerformSegue 传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12321823/

相关文章:

c# - 实现接口(interface) C#

ios - CIAdditionCompositing 产生不正确的效果

ios - 运行应用程序时出现 "Apple Mach-O Linker Error"

ipad - UISplitViewController:如何强制在应用启动时显示主弹出框? (肖像)

iphone - NSClassFromString() 返回一个类,即使类不可用

c# - 为什么c#函数不起作用

c# - XML 字符串数组反序列化为不同的类型名称

c# - 哪种返回类型更好? SortedSet 或已排序的列表

ios - 字符串的 AES 128 加密并在 Swift 中生成二进制返回

ios - Xcode7 - 等高乘数约束导致约束冲突