【问题标题】:How do I retrieve user input from a textbox after users hit the submit button?用户点击提交按钮后,如何从文本框中检索用户输入?
【发布时间】:2020-06-30 19:39:18
【问题描述】:

我无法使用 XAML 和 C# 在 Xamarin 中检索文本框输入。

我希望用户在字段中输入他们的 ID,然后点击提交按钮后,我可以检索字段中的值。

这是我目前所拥有的:

XAML:

        <Entry x:Name="UserInput"
               Placeholder="Enter employee ID"
               PlaceholderColor="Gray"
               HorizontalOptions="Center"
               VerticalOptions="CenterAndExpand" />
        <Button Text="Submit"
                VerticalOptions="Center"
                Clicked="GetUserInput"/>

Xaml.CS:

        void GetUserInput(System.Object sender, System.EventArgs e)
        {
            var matchingPerson = UserInput.Text;
            Console.WriteLine(matchingPerson);

        }

 
        public MainPage()
        {
            InitializeComponent();
        }

但是,当我调用matchingPerson = UserInput.Text 时,我无法访问UserInput 的值。它在一个单独的文件中,因为它的 XAML 没有“命名空间”供我访问。

用户在字段中输入数据后,如何获取 UserInput 文本框的值?

【问题讨论】:

  • 它不在单独的文件中,您正在从后面的代码中调用 UserInput,因此它应该看到条目和值。你是在构造函数后面的代码中调用 InitializeComponent 吗?
  • @Shadi 我刚刚编辑了答案以显示 initalizeComponent() 方法,这看起来对吗?
  • 这取决于你的页面名称,你的页面名称是什么?您将显示 Xaml 的整个代码和代码隐藏...
  • 你真的试过运行它吗?该代码应该是正确的

标签: c# xaml xamarin xamarin.forms


【解决方案1】:

您的代码在我这边运行良好,xamarin.forms 4.7 中的问题是在后面的代码中获取 x:name

我的 xamarin.forms 是 4.5.0.495

Xmal:

<StackLayout VerticalOptions="CenterAndExpand">
   <Entry x:Name="UserInput"
           Placeholder="Enter employee ID"
           PlaceholderColor="Gray"
           HorizontalOptions="Center"
           VerticalOptions="CenterAndExpand" />
    <Button Text="Submit"
            VerticalOptions="Center"
            Clicked="GetUserInput"/>
    
</StackLayout>

后面的代码:

void GetUserInput(System.Object sender, System.EventArgs e)
    {
        var matchingPerson = UserInput.Text;
        Console.WriteLine(matchingPerson);
    }

【讨论】:

    【解决方案2】:

    无论出于何种原因,关闭解决方案并重新打开它允许它运行。 Xamarin 在控制台中以某种方式向我报告了一个错误错误。上面的代码是正确的 - Xamarin 有问题。我强行退出了活动监视器中的所有 Visual Studio 应用程序并重新打开它们 - 成功了。

    【讨论】:

      猜你喜欢
      • 2019-08-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-23
      • 2021-08-02
      • 1970-01-01
      • 2021-11-23
      • 1970-01-01
      相关资源
      最近更新 更多