rithomas,
You could do this:
protected void Page_Load(object sender, EventArgs e)
{
gvAppointments.Sorting += new GridViewSortEventHandler(gvAppointments_Sorting);
}
void gvAppointments_Sorting(object sender, GridViewSortEventArgs e)
{
gvAppointments.DefaultSortColumnName = e.SortExpression;
gvAppointments.DefaultSortDirection = e.SortDirection;
}
or using Find method with parameterized filter:
<data:PatientAppointmentDataSource EnableDeepLoad="true"
ID="dsAppointments" EnableSorting="true" SelectMethod="GetByPatientID"
runat="server">
<DeepLoadProperties Method="IncludeChildren">
<Types>
<data:PatientAppointmentProperty Name="Reason" />
<data:PatientAppointmentProperty Name="Facility" />
<data:PatientAppointmentProperty Name="CareProvider" />
<data:PatientAppointmentProperty Name="Reason" />
</Types>
</DeepLoadProperties>
<Parameters>
<data:SqlParameter Name="Parameters">
<Filters>
<data:PatientAppointmentFilter Column="PatientID" ControlID="__Page" PropertyName="PatientID" />
</Filters>
</data:SqlParameter>
<data:CustomParameter Name="OrderByClause" Value="" ConvertEmptyStringToNull="false" />
</Parameters>
</data:PatientAppointmentDataSource>
code-behind:
public String PatientID
{
get
{
String q = Request.QueryString["PatientID"];
if (q != null)
{
return q.ToString();
}
return string.Empty;
}
}
Mike Shatny
--------------------------------------------------------------
Member of the .netTiers team http://www.nettiers.com
--------------------------------------------------------------