summaryrefslogtreecommitdiff
path: root/demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page
diff options
context:
space:
mode:
authorChristophe.Boulain <>2009-09-29 08:33:46 +0000
committerChristophe.Boulain <>2009-09-29 08:33:46 +0000
commitd76123127139a7cb013a0e4c17a63eb8aab57e3e (patch)
tree4a6093cec85636f5e595b66f4fb33f77f1d424e1 /demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page
parentb49bc6e7db63f0ae9788970108c4d2f20d841bed (diff)
Added TActiveDataGrid and TActiveRepeater from LCS
Diffstat (limited to 'demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page')
-rw-r--r--demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page104
1 files changed, 104 insertions, 0 deletions
diff --git a/demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page b/demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page
new file mode 100644
index 00000000..1ea4e9dc
--- /dev/null
+++ b/demos/quickstart/protected/pages/ActiveControls/Samples/TActiveRepeater/Sample3.page
@@ -0,0 +1,104 @@
+<com:TContent ID="body">
+
+<h1>TActiveRepeater Sample 3</h1>
+
+<p>
+The following example allows users to modify the existing tabular data using a <tt>TActiveRepeater</tt>. Two validators are used in the repeater to ensure the validity of user inputs. One is to ensure product names are not empty, the other ensures product prices are valid numeric format. After clicking on the <tt>save</tt> button, the input data is displayed in a table at the bottom of the page.
+</p>
+
+<table>
+<tr>
+ <th>Name</th>
+ <th>Category</th>
+ <th>Price</th>
+ <th>Imported</th>
+</tr>
+<com:TRepeater ID="Repeater" OnItemDataBound="repeaterDataBound">
+<prop:ItemTemplate>
+<tr>
+ <td>
+ <com:TActiveTextBox
+ ID="ProductName"
+ Text=<%#$this->Data['name']%>
+ AutoPostBack="true"
+ OnTextChanged="Page.saveInput"
+ OnCallback="Page.renderRepeater2"/>
+ </td>
+ <td>
+ <com:TActiveDropDownList
+ ID="ProductCategory"
+ AutoPostBack="true"
+ OnSelectedIndexChanged="Page.saveInput"
+ OnCallback="Page.renderRepeater2"/>
+ </td>
+ <td>
+ <com:TActiveTextBox
+ ID="ProductPrice"
+ Columns="7"
+ Text=<%#$this->Data['price']%>
+ AutoPostBack="true"
+ OnTextChanged="Page.saveInput"
+ OnCallback="Page.renderRepeater2"/>
+ </td>
+ <td>
+ <com:TActiveCheckBox
+ ID="ProductImported"
+ Checked=<%#$this->Data['imported']%>
+ AutoPostBack="true"
+ OnCheckedChanged="Page.saveInput"
+ OnCallback="Page.renderRepeater2"/>
+ <com:TRequiredFieldValidator
+ ControlToValidate="ProductName"
+ ErrorMessage="Product name cannot be empty."
+ Display="Dynamic" />
+ <com:TRegularExpressionValidator
+ ControlToValidate="ProductPrice"
+ RegularExpression="\d+(\.\d{1,2})?"
+ ErrorMessage="Product price must be in the format of ddd.dd"
+ Display="Dynamic" />
+ </td>
+</tr>
+</prop:ItemTemplate>
+</com:TRepeater>
+</table>
+
+<div>
+<com:TActiveButton Text="Save" OnClick="saveInput" OnCallback="renderRepeater2"/>
+</div>
+
+<com:TSafeHtml>
+<com:TActiveRepeater ID="Repeater2" EnableViewState="false" >
+
+<prop:HeaderTemplate>
+<table cellpadding="2">
+<tr style="color:white;background-color:black">
+ <th>ID</th>
+ <th>Name</th>
+ <th>Category</th>
+ <th>Price</th>
+ <th>Imported</th>
+</tr>
+</prop:HeaderTemplate>
+
+<prop:ItemTemplate>
+<tr style="<%# 'background-color:' . ($this->ItemIndex%2 ? '#BFCFFF' : '#E6ECFF') %>">
+<td><%#$this->Data['id']%></td>
+<td><%#$this->Data['name']%></td>
+<td><%#$this->Data['category']%></td>
+<td><%#$this->Data['price']%></td>
+<td><%#$this->Data['imported']?'Yes':'No'%></td>
+</tr>
+</prop:ItemTemplate>
+
+<prop:FooterTemplate>
+<tr style="color:white;background-color:black;text-align:center;">
+<td colspan="5">Computer Parts Inventory</td>
+</tr>
+</table>
+</prop:FooterTemplate>
+
+</com:TActiveRepeater>
+
+</com:TSafeHtml>
+
+<div class="last-modified">$Id: Sample3.page 1688 2007-02-09 22:48:31Z xue $</div></com:TContent> \ No newline at end of file