单触式是5.2.12。ios是v5.1.1(模拟器)
好像我错过了一个重要的谜题。
我正在子类化DialogViewController并将其设置为uinavigationcontroller中的唯一控制器。
在子类ViewWillAppearDialogViewController中,我试图设置左右栏按钮项:

this.NavigationController.NavigationItem.LeftBarButtonItem = new UIBarButtonItem(UIBarButtonSystemItem.Done, this.HandleDoneButtonTouched );

他们两个都没出现。但显示标题。如果我调试,我可以看到项目设置正确。
我也试过在导航控制器上使用SetItems():也没有效果。
导航控制器以页面形式显示。

最佳答案

导航项通常不会通过导航控制器进行更新。相反,它们是通过视图控制器上的navigationitem属性更新的:

this.NavigationItem.SetRightBarButtonItem(
        new UIBarButtonItem(UIImage.FromFile("some_image.png")
        , UIBarButtonItemStyle.Plain
        , (sender,args) => {
           // button was clicked
        })
    , true);

http://docs.xamarin.com/ios/recipes/Content_Controls/Navigation_Controller/Add_a_Nav_Bar_Right_Button

10-01 22:14