<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void SelectRegion(object sender, EventArgs e)
{
if (RegionDropDownList.SelectedValue == "(Show All)")
PeopleDataSource.XPath = "/People/Person";
else
{
string selectedValue = "";
switch (RegionDropDownList.SelectedValue)
{
case "CA":
selectedValue = "CA";
break;
case "HI":
selectedValue = "HI";
break;
case "WA":
selectedValue = "WA";
break;
default:
// Invalid value.
break;
}
PeopleDataSource.XPath = "/People/Person[Address/Region='" + selectedValue + "']";
}
PeopleTreeView.DataBind();
}
</script>
<html>
<body>
<form runat="server">
<table border=0 cellpadding=3>
<tr>
<td valign=top>
<b>select region:</b>
<asp:dropdownlist runat="server" id="regiondropdownlist"
autopostback
onselectedindexchanged="selectregion">
<asp:listitem selected="true">(show all)</asp:listitem>
<asp:listitem>ca</asp:listitem>
<asp:listitem>hi</asp:listitem>
<asp:listitem>wa</asp:listitem>
</asp:dropdownlist>
</td>
<td valign=top>
<asp:xmldatasource
id="peopledatasource"
runat="server"
xpath="/people/person"
datafile="~/app_data/people.xml" />
<asp:treeview
id="peopletreeview"
runat="server"
datasourceid="peopledatasource">
<databindings>
<asp:treenodebinding datamember="lastname"
textfield="#innertext" />
<asp:treenodebinding datamember="firstname"
textfield="#innertext" />
<asp:treenodebinding datamember="street"
textfield="#innertext" />
<asp:treenodebinding datamember="city"
textfield="#innertext" />
<asp:treenodebinding datamember="region"
textfield="#innertext" />
<asp:treenodebinding datamember="zipcode"
textfield="#innertext" />
<asp:treenodebinding datamember="title"
textfield="#innertext" />
<asp:treenodebinding datamember="description"
textfield="#innertext" />
</databindings>
</asp:treeview>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub SelectRegion(sender As Object, e As EventArgs)
If RegionDropDownList.SelectedValue = "(Show All)" Then
PeopleDataSource.XPath = "/People/Person"
Else
Dim selectedValue As String = ""
Select Case RegionDropDownList.SelectedValue
Case "CA"
selectedValue = "CA"
Case "HI"
selectedValue = "HI"
Case "WA"
selectedValue = "WA"
Case Else
’ Invalid value.
End Select
PeopleDataSource.XPath = "/People/Person[Address/Region='" & selectedValue & "']"
End If
PeopleTreeView.DataBind()
End Sub
</script>
<html>
<body>
<form runat="server">
<table border=0 cellpadding=3>
<tr>
<td valign=top>
<b>select region:</b>
<asp:dropdownlist runat="server" id="regiondropdownlist"
autopostback
onselectedindexchanged="selectregion">
<asp:listitem selected="true">(show all)</asp:listitem>
<asp:listitem>ca</asp:listitem>
<asp:listitem>hi</asp:listitem>
<asp:listitem>wa</asp:listitem>
</asp:dropdownlist>
</td>
<td valign=top>
<asp:xmldatasource
id="peopledatasource"
runat="server"
xpath="/people/person"
datafile="~/app_data/people.xml" />
<asp:treeview
id="peopletreeview"
runat="server"
datasourceid="peopledatasource">
<databindings>
<asp:treenodebinding datamember="lastname"
textfield="#innertext" />
<asp:treenodebinding datamember="firstname"
textfield="#innertext" />
<asp:treenodebinding datamember="street"
textfield="#innertext" />
<asp:treenodebinding datamember="city"
textfield="#innertext" />
<asp:treenodebinding datamember="region"
textfield="#innertext" />
<asp:treenodebinding datamember="zipcode"
textfield="#innertext" />
<asp:treenodebinding datamember="title"
textfield="#innertext" />
<asp:treenodebinding datamember="description"
textfield="#innertext" />
</databindings>
</asp:treeview>
</td>
</tr>
</table>
</form>
</body>
</html> |