0
我正在開發Ax 2012.我有一個表單上的stringEdit控件,它包含相同類型的信息並共享一個EDT。我在課堂上對EDT進行驗證。 我從窗體上的檢查方法調用該類。對於需要此驗證的所有stringEdit控件,我在表單上使用相同的方法。我從每個控件的validate方法的表單中檢查表單的方法。將控制對象傳遞給方法
我的問題:我如何將已被修改(並需要驗證)的控件傳遞給檢查方法? 我檢查的形式方法是這樣的:
public void checkNumber(FormStringControl _cntrl)
{
MyValidationClass valClass = new MyValidationClass();
;
if(!valClass.validateNumber(_cntrl.text()))
{
_cntrl.text("");
}
}
***這個問題我已經是通過電流控制上述方法
控制器上的validate方法是這樣的:
public boolean validate()
{
boolean ret;
//ret = super();
ret = element.checkNumber(this);
return ret;
}
我的問題是傳遞當前控制我修改爲checkNumber方法。如果我不能將「this」傳遞給檢查方法,那麼我應該傳遞什麼?
Thansk Jan.當我最初通過控件上的validate將「this」傳遞給checkNumber方法時,我得到「與所需類型不兼容」的錯誤。然而,當我使用你建議的「ret = super()&& element.checkNumber .....」的代碼時,它才認識到相同的類型。它沒有認識到這個「這個」對象是同一類型,但現在它確實如此。我不知道在調用檢查方法之前的超級調用是否與它有關係?無論如何,感謝您的回答。 – Celeste 2012-03-22 06:29:11
該文檔沒有明確說明,但通常super()確實有效。文檔:http://msdn.microsoft.com/en-us/library/aa876155(v=ax.10).aspx – 2012-03-23 06:25:53