Xamarin.Forms入门困扰与解决方式-第二篇

Thinkpower_Support 2015-02-11 11:01:44
Xamarin.Forms入门困扰与解决方式-第二篇

一般項目中的按鈕都是用圖做得美美的(不會像第一篇中的按鈕),但是Xamarin.Forms中的Image控件默認是無法接受命令或觸碰事件的,WPF/Silverlight中可用Trigger讓控件侦听事件,但是在Xamarin中Trigger是不同的實現方式(沒有System.Windows.Interactivity.dll),另外用了TapGestureRecognizer來處理,本文延續第一篇的案例,演示由Button換成Image的解决方式

演示版本: Xamarin.Forms.1.3.1.6296(支援Unified API)

演示目标: 红框标识的控制项放在在ListView外面与里面(由分割线区分)的结果要一致




Xamarin.Forms中的Image無法像Button一樣使用(下列兩種方式是錯的)

<ImageCommand="{Binding CmdAdd}"CommandParameter="{Binding OneData}" />

<ImageClicked="OnClicked" />

正確方式是替Image添加TapGestureRecognizer寫法如下

<ImageSource="like.png">

<Image.GestureRecognizers>

<TapGestureRecognizerCommand="{Binding CmdAdd}"CommandParameter="{Binding OneData}" />

</Image.GestureRecognizers>

</Image>



如同第一篇,Image放到ListView內就出問題了(Xaml的逻辑不一致),所幸解法也與第一篇相同,改用Event的写法即可


這種方法還可以用在其他控件,例如Label

<LabelText="...">

<Label.GestureRecognizers>

<TapGestureRecognizerCommand="{Binding CmdAdd}"CommandParameter="{Binding OneData}" />

</Label.GestureRecognizers>

</Label>


更多相关问题请访问我的博客地址:http://blog.csdn.net/thinkpower_support/article/details/43668973
...全文
339 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Justin-Liu 2015-02-11
  • 打赏
  • 举报
回复
亲你发博客就好了,不用发到论坛。。。

436

社区成员

发帖
与我相关
我的任务
社区描述
欢迎来到Xamarin技术交流论坛学习交流,Xamarin是一个行动App开发平台,开发人员透过Xamarin可开发出iOS、Android 与Windows 等平台的...
社区管理员
  • Xamarin技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧