我的应用程序一直是这样的代码,但我不确定这是否正确。特别是“返回 aButtonClickedCommand ??” 我认为这意味着如果命令尚未定义,则创建它。
与其这样做,不如在构造函数中声明命令会更干净,如果是这样,我该怎么做并使用它?
public partial class PhrasesFrameViewModel : ObservableObject
{
private ICommand aButtonClickedCommand;
public ICommand AButtonClickedCommand
{
get
{
return aButtonClickedCommand ?? (aButtonClickedCommand =
new Command(() => {
App.DB.IncrementPoints(Settings.cfs, phrasesFrame.phrase, (int)Settings.aBtn, 1);
Change.points = true;
phrasesFrame.CancelTimer2();
}));
}
}
您可以在构造函数或其他命令模式中执行此操作,并且可能看起来更简洁,并且还可以节省将其放入构造函数中
private ICommand abuttonClickedCommand;
public ICommand AButtonClickedCommand => aButtonClickedCommand ?? (aButtonClickedCommand = new Command(ProcessButtonClickedCommand));
private void ProcessButtonClickedCommand()
{
App.DB.IncrementPoints(Settings.cfs, phrasesFrame.phrase, (int)Settings.aBtn, 1);
Change.points = true;
phrasesFrame.CancelTimer2();
}
你基本上是正确的,如果它没有创建(然后创建它),但是有些人也喜欢构造函数方法
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句