我已经使用MvvmCross在EditText上为FocusChange事件创建了自定义绑定.我可以绑定事件并触发,但是我不知道如何传递事件args.我的自定义绑定是这个
using AndroID.VIEws;using AndroID.Widget;using CirrIoUs.MvvmCross.Binding;using CirrIoUs.MvvmCross.Binding.DroID.Target;using CirrIoUs.MvvmCross.Binding.DroID.VIEws;using CirrIoUs.MvvmCross.viewmodels;using System;namespace MPS_Mobile_Driver.DroID.Bindings{ public class MvxEditTextFocusChangeBinding : MvxAndroIDTargetBinding { private Readonly EditText _editText; private IMvxCommand _command; public MvxEditTextFocusChangeBinding(EditText editText) : base(editText) { _editText = editText; _editText.FocusChange += editTextOnFocusChange; } private voID editTextOnFocusChange(object sender, EditText.FocusChangeEventArgs eventArgs) { if (_command != null) { _command.Execute( eventArgs ); } } public overrIDe voID SetValue(object value) { _command = (IMvxCommand)value; } protected overrIDe voID dispose(bool isdisposing) { if (isdisposing) { _editText.FocusChange -= editTextOnFocusChange; } base.dispose(isdisposing); } public overrIDe Type targettype { get { return typeof(IMvxCommand); } } protected overrIDe voID SetValueImpl(object target, object value) { } public overrIDe MvxBindingMode DefaultMode { get { return MvxBindingMode.OneWay; } } }}
我将其连接到viewmodel中,如下所示:
public IMvxCommand FocusChange{ get { return new MvxCommand(() => OnFocusChange() ); }}private voID OnFocusChange(){ //Do Something}
有没有办法做类似的事情
public IMvxCommand FocusChange{ get { return new MvxCommand((e) => OnFocusChange(e) ); }}private voID OnFocusChange(EditText.FocusChangeEventArgs e){ //Do Something}
我在那里尝试执行的 *** 作无效,但我希望有类似的方法可能有效.当命令在此行的自定义绑定中触发时,我能够传递eventargs
_command.Execute( eventArgs );
我只是找不到在viewmodel中捕获它们的方法.谁能帮我这个?
吉姆
解决方法:
在尝试了许多不同的安排之后,我发现连接MvxCommand的正确语法是
public IMvxCommand FocusChange{ get { return new MvxCommand<EditText.FocusChangeEventArgs>(e => OnFocusChange(e)); }}private voID OnFocusChange(EditText.FocusChangeEventArgs e){ if (!e.HasFocus) { //Do Something }}
希望这可以帮助!
总结以上是内存溢出为你收集整理的C#-MvvmCross自定义事件绑定事件Args全部内容,希望文章能够帮你解决C#-MvvmCross自定义事件绑定事件Args所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)