Template file: Sample1.page
Class file: Sample1.php
Template file: Sample2.page
Class file: Sample2.php
Template file: Sample3.page
Class file: Sample3.php
Template file: Sample4.page
Class file: Sample4.php
Template file: Sample5.page
Class file: Sample5.php
Template file: Sample6.page
Class file: Sample6.php

/Controls/Samples/TDataGrid/Sample4.php

<?php

Prado::using('Application.pages.Controls.Samples.TDataGrid.Sample2');

class Sample4 extends Sample2
{
	protected function sortData($data,$key)
	{
		usort($data, function($a, $b) use ($key) {
			if ($a[$key] == $b[$key]) {
				return 0;
			} else {
				return ($a[$key] > $b[$key]) ? 1 : -1;
			}
		});
		return $data;
	}

	public function sortDataGrid($sender,$param)
	{
		$this->DataGrid->DataSource=$this->sortData($this->Data,$param->SortExpression);
		$this->DataGrid->dataBind();
	}
}