FindViewById不显示ID

时间:2018-12-18 17:03:00

标签: c# xamarin xamarin.forms

我有一个按钮,我想在按下按钮后清除某些字段。我有一个按钮事件,应该在实现清除功能之前显示一个问题。用户确认要清除按钮后,该按钮将清除字段中的文本。但是,到目前为止,该对话框尚未显示。以下是我的清除按钮功能的示例。如果您看到我没看到的任何内容,请告诉我。

        void btnPalletClear_Click(object sender, EventArgs e)
    {
        dialog = new Dialog(this, Android.Resource.Style.ThemeHoloLightDialogNoActionBarMinWidth);

        View myView = View.Inflate(this, Resource.Layout.confirmation_dialog, null);
        myView.FindViewById<TextView>(Resource.Id.txtConfirmTitle).Text = "Clear Pallet";
        myView.FindViewById<TextView>(Resource.Id.txtConfirmMessage).Text = "Are you sure?";
        myView.FindViewById<LinearLayout>(Resource.Id.llQuantity).Visibility = ViewStates.Gone;

        myView.FindViewById<Button>(Resource.Id.cmdConfirmCancel).Click += delegate { dialog.Dismiss(); };

        myView.FindViewById<Button>(Resource.Id.cmdConfirmOK).Click += delegate
        {
            dialog.SetContentView(myView);
            dialog.Show();
            txtPalletUNQ.Text = "";

            adapter.lstPallet.Clear();
            adapter.NotifyDataSetChanged();
            txtPalletVTPID.Text = "";
        };
    }

1 个答案:

答案 0 :(得分:1)

我剪切了dialog.SetContentView(myview)和dialog.Show()并将其粘贴到cmdConfirmOk的外部,并对其进行了修复。