【问题标题】:How to get checkbox value in Xamarin Forms如何在 Xamarin Forms 中获取复选框值
【发布时间】:2016-06-30 10:08:24
【问题描述】:

我使用 Messier16.Forms.Controls.Checkbox 在 Xamarin Forms 中为 ios 和 andorid 创建复选框。现在我得到了该复选框,但无论是否选中,我都无法读取值。这是我的代码

Xaml 文件

 <StackLayout VerticalOptions="Start" Orientation="Horizontal">
 <cbox:Checkbox WidthRequest="45" VerticalOptions="Center"        CheckedChanged="MyCheckedMethod"/>
  <Label Text="Checkbox Example" VerticalOptions="Center" />

</StackLayout>

.cs 文件

     public void MyCheckedMethod(object sender, EventArgs e)
    {
       bool checked=e.checked;
    }

【问题讨论】:

    标签: xamarin xamarin.ios xamarin.android xamarin.forms


    【解决方案1】:

    来自链接https://github.com/messier16/Forms.Checkbox

    cb1.CheckedChanged += 
        (sender, e) =>
        { 
            cb2.IsEnabled = e.IsChecked;
            cb3.Checked = !cb1.Checked;
        };
    

    我想你需要CheckedChangedEventArgs,该课程在上面的链接中提供。

    public void MyCheckedMethod(object sender, CheckedChangedEventArgs e)
        {
           bool checked=e.IsChecked;
        }
    

    【讨论】:

    • 感谢您的回复。我厌倦了那个 bool checked=e.IsChecked;但是我收到以下错误“EventArgs”不包含“IsChecked”的定义,并且找不到接受“EventArgs”类型的第一个参数的扩展方法“IsChecked”(您是否缺少 using 指令或程序集引用? )
    • 你添加CheckedChangedEventArgs类了吗?您还需要 Checkbox.cs 类。你安装了nuget包吗?我的意思是说你是通过nuget还是直接代码使用它。
    • 我添加了 nuget 包,但我没有添加 CheckedChangedEventArgs 类和 Checkbox.cs。如果可能,您可以分享代码。
    • 那么只需将软件包安装到所有平台特定代码即可。并在您各自的应用程序中在Xamarin.Forms.Init(); 之后调用CheckboxRenderer.Init(); ,然后在答案中使用上面的代码。你不需要其他任何东西。
    • 我添加了 CheckboxRenderer.Init(); 并在 .cs 文件中更改了我的代码 Checkbox checknew = (Checkbox)sender; checkvalue = checknew.Checked; 现在它正在工作。非常感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-06
    • 2020-06-30
    • 2019-06-22
    • 1970-01-01
    • 2017-04-28
    相关资源
    最近更新 更多