【发布时间】:2013-07-31 13:04:30
【问题描述】:
我正在开发一个基于 MvvmCross 的 Android 应用程序。该应用程序包含(除其他外)大量的 ToggleButton(s)。这些按钮被添加到 .axml 文件中。它们的 Checked 属性和 Click 事件绑定到视图模型属性。由于每个 ToggleButton 的 Checked 属性应该反映应用程序服务器上某些属性的状态,因此我不希望在用户单击它们时更改它们的选中状态,而仅在更改视图模型上的绑定属性时.这个“特殊”切换按钮应该如何工作的示例:当用户单击它时,按钮的“Checked”属性不会更改,仅调用单击事件绑定到的 ICommand。该命令调用的方法依次更改视图模型上的属性值(如果成功执行)。将 WPF 或 Windows 窗体中的 ToggleButton 扩展到所描述的功能很容易,但我不知道如何在 android 中做到这一点。任何想法将不胜感激。
乌罗什
【问题讨论】:
-
到目前为止您尝试过什么?在 Android 中实现和扩展控件及其在 MvvmCross 中的绑定非常简单。有关一些示例,请参阅 mvvmcross.wordpress.com 中的 N=18 和 N=28
-
嗨斯图尔特。我同意在 MvvmCross 中实现自定义绑定是直截了当的。我查看了 N=18 教程,并且在 stackoverflow 上也找到了一些你的答案。但我认为我的问题无法通过自定义绑定来解决,因为我遇到了 ToggleButton 的视觉状态问题。我还尝试扩展 ToggleButton 并将 OnClickListener 附加到覆盖内,但我并没有走得太远。我搜索了解释该主题的文章,但找不到与我的问题相关的任何内容。
标签: xamarin.android mvvmcross togglebutton