2

我对创建 Windows 移动应用程序非常陌生。我有一个名为“设置”的按钮 - 我希望它打开一个小弹出窗口,该窗口与当前窗口重叠,纯文本框要求输入密码。我该怎么办?我是否必须创建一个新表单,但要相应地调整表单的大小?

我创建了一个新表单并将其尺寸缩小了很多,但是当它打开时,它是全屏的。

任何帮助

4

2 回答 2

3

对于弹出对话框效果,将一个Panel控件放到主窗体上,您称之为“loginPnl”或类似的带有一个或多个TextBox控件以及一些Button用于“确定”和“取消”的控件。将 Visible 设置为 False 并将其粘贴在其他控件后面。

private Panel loginPnl;

public Form1() {
  InitializeComponent();
  loginPnl.SendToBack();
  loginPnl.Visible = false;
}

现在,只要您准备好让某人登录,只需调用您的自定义登录例程:

private void LoginPanel(bool show) {
  // don't forget to reset your TextBox controls
  loginPnl.Visible = show;
  if (loginPnl.Visible) {
    loginPnl.BringToFront();
    txtLoginPwd1.Text = null;
    txtLoginPwdVerify.Text = null;
  } else {
    loginPnl.SendToBack();
  }
}

不过,不要忘记之后隐藏您的登录面板。

于 2012-07-12T15:11:39.160 回答
0

尝试创建一个封装您的登录功能的表单,然后使用 form.ShowDialog()。不过,这将提供的不仅仅是一个文本框,因为它还将提供关闭对话框的按钮(我会推荐它而不是只有一个文本框)。

如果您真的只想拥有文本框,那么您需要“淡化”屏幕的所有其他区域,以在显示文本框时(以及其他相关方面,如焦点遍历)给人一种印象,这些控件/区域暂时不可用。

于 2012-07-12T14:03:18.783 回答