如何从单触发中的PerformSegue传递数据

Akr*_*bek 5 c# xamarin.ios ios ios5

我有表源类和行单击我调用下面的函数移动到另一个控制器,但我想传递一些数据.

controller.PerformSegue("backtorootviewsague",controller);
Run Code Online (Sandbox Code Playgroud)

有谁知道我怎么能实现它.我是monotouch和ios的新手.我无法弄清楚如何实现这一目标.

Lor*_*o B 11

PrepareForSegue是一个正确的地方.例如,如果CustomerViewController调用创建的控制器, 则CustomerListViewControllerCustomerListViewController该方法中覆盖,如下所示:

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;
    }
}
Run Code Online (Sandbox Code Playgroud)

哪里CustomerViewController有如下公共财产:

public SomeTypeData MyData { get; set; }
Run Code Online (Sandbox Code Playgroud)

您可以在Xamarin样本中看到这一点.

希望有所帮助.