c#button onclick请求用户输入

时间:2014-06-09 12:59:49

标签: c# xaml windows-phone-8

我有一个按钮,

<Button x:Name="myButton"
     Content="Click Me!"
     Click="myButton_Click" />

当我按下按钮时,我想要求用户输入一个数字,

private void myButton_Click(object sender, RoutedEventArgs e)
    {
        int i = numberUserEnters;
        //do something with i
    }

如何在按下按钮时出现屏幕键盘?

4 个答案:

答案 0 :(得分:1)

您可以从UserControl获得用户输入。试试这个:

XAML:

    <Popup VerticalAlignment="Center" x:Name="MyPopup">
        <StackPanel Width="480">
            <TextBox x:Name="txtdata"></TextBox>
            <Button Content="Ok" x:Name="btnOk" Click="btnOk_Click"></Button>
            <Button Content="Cancel" x:Name="btnCancel" Click="btnCancel_Click"></Button>
        </StackPanel>
    </Popup>

CS:

private void btnOk_Click(object sender, RoutedEventArgs e)
{
    if (txtdata.Text != "")
    {
        MyPopup.IsOpen = false;
        LayoutRoot.Opacity = 1.0;
        MessageBox.Show(txtdata.Text);
    }
}

private void btnCancel_Click(object sender, RoutedEventArgs e)
{
    MyPopup.IsOpen = false;
    LayoutRoot.Opacity = 1.0;
}

private void Button_Click(object sender, RoutedEventArgs e)
{
    MyPopup.IsOpen = true;
    LayoutRoot.Opacity = 0.5;
}

答案 1 :(得分:0)

您需要导航到一个新的单独页面,其中包含您将捕获用户输入的TextBox。该页面还需要确定和取消按钮以允许用户确认,然后您可以将控制权返回到上一页。

如果您查看现有的Windows Phone应用程序,他们往往会以这种方式工作。

答案 2 :(得分:0)

有很多方法可以做到这一点。

最简单的方法是使用Telerik Rad Controls, Rad Message Box

但是,如果您不想控制控件,可以自行构建并显示它。

我会研究如何创建User Control On Windows Phone以及如何显示它们。

你想的比这容易得多。

答案 3 :(得分:0)

正如Anthony Russell所说,RadControls将是一个很好的方法,但如果你没有它们或者不想为它们付费,Coding4Fun Toolkit's InputPrompt是免费且非常灵活的。