public function setViewState($key, $value, $defaultValue = null)
{
if ($this->_trackViewState) {
unset($this->_tempState[$key]);
$this->_viewState[$key] = $value;
} else {
unset($this->_viewState[$key]);
if ($value === $defaultValue) {
unset($this->_tempState[$key]);
} else {
$this->_tempState[$key] = $value;
}
}
}