DataList内で Multiple として使うと、php エラー

DataList内で使うと、\( this->Page \)this->Parent などがいずれもNULL。そのため、以下の用にTActiveListBox のメソッドを変更。とりあえず 動く様だけど、結局その方法を取らなかった為、その後の検証はせず。
	public function setSelectionMode($value)
	{
		parent::setSelectionMode($value);
		$multiple = $this->getIsMultiSelect();
		$id = $this->getUniqueID(); $multi_id = $id.'[]';
		if($multiple)
			if(!$this->getPage()){  //この行を追加
				$this->Application->Service->getRequestedPage()->registerPostDataLoader($multi_id);  //この行を追加
			}else{  //この行を追加
				$this->getPage()->registerPostDataLoader($multi_id);
			}  //この行を追加
		if($this->getActiveControl()->canUpdateClientSide())
		{
			$client = $this->getPage()->getCallbackClient();
			$client->setAttribute($this, 'multiple', $multiple ? 'multiple' : false);
			$client->setAttribute($this, 'name', $multiple ? $multi_id : $id);
			if($multiple)
				$client->addPostDataLoader($multi_id);
		}
	}