From 422eb693da395056f7aaba594be15bcc6b103bf2 Mon Sep 17 00:00:00 2001
From: xue <>
Date: Thu, 26 Jan 2006 05:29:54 +0000
Subject: Added databinding and validation demos to TCheckBoxList and
TRadioButtonList.
---
.../pages/Controls/Samples/TCheckBoxList/Home.page | 72 ++++++++++++++++++++++
.../pages/Controls/Samples/TCheckBoxList/Home.php | 66 +++++++++++++++-----
.../Controls/Samples/TRadioButtonList/Home.page | 72 ++++++++++++++++++++++
.../Controls/Samples/TRadioButtonList/Home.php | 63 ++++++++++++++++---
4 files changed, 249 insertions(+), 24 deletions(-)
(limited to 'demos/quickstart')
diff --git a/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.page b/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.page
index bc750cb8..00670343 100644
--- a/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.page
+++ b/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.page
@@ -133,4 +133,76 @@ Auto postback check box list:
+
+
+
Checkbox Lists with DataBinding
+
+
+
+
+
+Databind to an integer-indexed array:
+ |
+
+
+
+ |
+
+
+
+
+Databind to an associative array:
+ |
+
+
+
+ |
+
+
+
+
+Databind with DataTextField and DataValueField specified:
+ |
+
+
+
+ |
+
+
+
+
+
+CheckBox List with Validation
+
+
+
+
+
+CheckBox list causing validation:
+ |
+
+
+
+
+
+
+
+ |
+
+
+
+
\ No newline at end of file
diff --git a/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.php b/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.php
index 3873ca30..08c6f3ca 100644
--- a/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.php
+++ b/demos/quickstart/protected/pages/Controls/Samples/TCheckBoxList/Home.php
@@ -2,35 +2,69 @@
class Home extends TPage
{
- public function buttonClicked($sender,$param)
+ public function onLoad($param)
{
- $indices=$this->CheckBoxList->SelectedIndices;
- $result='';
- foreach($indices as $index)
+ parent::onLoad($param);
+ if(!$this->IsPostBack)
{
- $item=$this->CheckBoxList->Items[$index];
- $result.="(Index: $index, Value: $item->Value, Text: $item->Text)\n";
+ $data=array('item 1','item 2','item 3','item 4');
+ $this->DBCheckBoxList1->DataSource=$data;
+ $this->DBCheckBoxList1->dataBind();
+
+ $data=array('key 1'=>'item 1','key 2'=>'item 2',
+ 'key 3'=>'item 3','key 4'=>'item 4');
+ $this->DBCheckBoxList2->DataSource=$data;
+ $this->DBCheckBoxList2->dataBind();
+
+ $data=array(
+ array('id'=>'001','name'=>'John','age'=>31),
+ array('id'=>'002','name'=>'Mary','age'=>30),
+ array('id'=>'003','name'=>'Cary','age'=>20));
+ $this->DBCheckBoxList3->DataSource=$data;
+ $this->DBCheckBoxList3->dataBind();
}
- if($result==='')
- $this->SelectionResult->Text='Your selection is empty.';
- else
- $this->SelectionResult->Text='Your selection is: '.$result;
}
- public function selectionChanged($sender,$param)
+ protected function collectSelectionResult($input,$output)
{
- $indices=$sender->SelectedIndices;
+ $indices=$input->SelectedIndices;
$result='';
foreach($indices as $index)
{
- $item=$sender->Items[$index];
- $result.="(Index: $index, Value: $item->Value, Text: $item->Text)\n";
+ $item=$input->Items[$index];
+ $result.="(Index: $index, Value: $item->Value, Text: $item->Text)";
}
if($result==='')
- $this->SelectionResult2->Text='Your selection is empty.';
+ $output->Text='Your selection is empty.';
else
- $this->SelectionResult2->Text='Your selection is: '.$result;
+ $output->Text='Your selection is: '.$result;
+ }
+
+ public function buttonClicked($sender,$param)
+ {
+ $this->collectSelectionResult($this->CheckBoxList,$this->SelectionResult);
+ }
+
+ public function selectionChanged($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->SelectionResult2);
}
+
+ public function DBCheckBoxList1Changed($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->DBCheckBoxList1Result);
+ }
+
+ public function DBCheckBoxList2Changed($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->DBCheckBoxList2Result);
+ }
+
+ public function DBCheckBoxList3Changed($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->DBCheckBoxList3Result);
+ }
+
}
?>
\ No newline at end of file
diff --git a/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.page b/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.page
index a65c4d2d..97fe260c 100644
--- a/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.page
+++ b/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.page
@@ -133,4 +133,76 @@ Auto postback radio button list:
+
+
+Checkbox Lists with DataBinding
+
+
+
+
+
+Databind to an integer-indexed array:
+ |
+
+
+
+ |
+
+
+
+
+Databind to an associative array:
+ |
+
+
+
+ |
+
+
+
+
+Databind with DataTextField and DataValueField specified:
+ |
+
+
+
+ |
+
+
+
+
+
+RadioButton List with Validation
+
+
+
+
+
+RadioButton list causing validation:
+ |
+
+
+
+
+
+
+
+ |
+
+
+
+
\ No newline at end of file
diff --git a/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.php b/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.php
index 47d9b23b..b45441f9 100644
--- a/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.php
+++ b/demos/quickstart/protected/pages/Controls/Samples/TRadioButtonList/Home.php
@@ -2,20 +2,67 @@
class Home extends TPage
{
+ public function onLoad($param)
+ {
+ parent::onLoad($param);
+ if(!$this->IsPostBack)
+ {
+ $data=array('item 1','item 2','item 3','item 4');
+ $this->DBRadioButtonList1->DataSource=$data;
+ $this->DBRadioButtonList1->dataBind();
+
+ $data=array('key 1'=>'item 1','key 2'=>'item 2',
+ 'key 3'=>'item 3','key 4'=>'item 4');
+ $this->DBRadioButtonList2->DataSource=$data;
+ $this->DBRadioButtonList2->dataBind();
+
+ $data=array(
+ array('id'=>'001','name'=>'John','age'=>31),
+ array('id'=>'002','name'=>'Mary','age'=>30),
+ array('id'=>'003','name'=>'Cary','age'=>20));
+ $this->DBRadioButtonList3->DataSource=$data;
+ $this->DBRadioButtonList3->dataBind();
+ }
+ }
+
+ protected function collectSelectionResult($input,$output)
+ {
+ $indices=$input->SelectedIndices;
+ $result='';
+ foreach($indices as $index)
+ {
+ $item=$input->Items[$index];
+ $result.="(Index: $index, Value: $item->Value, Text: $item->Text)";
+ }
+ if($result==='')
+ $output->Text='Your selection is empty.';
+ else
+ $output->Text='Your selection is: '.$result;
+ }
+
public function buttonClicked($sender,$param)
{
- $index=$this->RadioButtonList->SelectedIndex;
- $value=$this->RadioButtonList->SelectedValue;
- $text=$this->RadioButtonList->SelectedItem->Text;
- $this->SelectionResult->Text="Your selection is (Index: $index, Value: $value, Text: $text).";
+ $this->collectSelectionResult($this->RadioButtonList,$this->SelectionResult);
}
public function selectionChanged($sender,$param)
{
- $index=$sender->SelectedIndex;
- $value=$sender->SelectedValue;
- $text=$sender->SelectedItem->Text;
- $this->SelectionResult2->Text="Your selection is (Index: $index, Value: $value, Text: $text).";
+ $this->collectSelectionResult($sender,$this->SelectionResult2);
+ }
+
+ public function DBRadioButtonList1Changed($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->DBRadioButtonList1Result);
+ }
+
+ public function DBRadioButtonList2Changed($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->DBRadioButtonList2Result);
+ }
+
+ public function DBRadioButtonList3Changed($sender,$param)
+ {
+ $this->collectSelectionResult($sender,$this->DBRadioButtonList3Result);
}
}
--
cgit v1.2.3