Hey there,
I'm having a problem getting sorting to work.
Here's what the GridView looks like:
"server" ID="updt1" Mode="Condition al">
"false"
AllowSorting="t rue"
AlternatingRowS tyle-CssClass="altro w2"
AutoGenerateCol umns="false"
BorderColor="si lver"
BorderStyle="So lid"
BorderWidth="1p x"
CaptionAlign="L eft"
EmptyDataText=" No data available."
EmptyDataRowSty le-CssClass="altro w2"
GridLines="Hori zontal"
HeaderStyle-CssClass="heade rx"
HeaderStyle-Font-Bold="false"
Id="gridView"
OnSorting="gv_O nSorting"
OnRowCreated="g v_RowCreated"
OnRowDataBound= "gv_RowDataboun d"
RowStyle-CssClass="row2"
Runat="server"
ShowFooter="fal se"
Width="100%" >
"fullname"
HeaderStyle-CssClass="hpad"
HeaderStyle-HorizontalAlign ="Left"
HeaderText="&nb sp;Name"
ItemStyle-CssClass="hyper "
ItemStyle-Width="180"
SortExpression= "fullname"
/>
"hpad"
HeaderText="Bra nch"
HtmlEncode="fal se"
ItemStyle-Width="200"
SortExpression= "officename "
/>
"name_count y"
HeaderStyle-CssClass="hpad"
HeaderText="Cou nty"
HtmlEncode="fal se"
ItemStyle-CssClass="vline "
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="90"
SortExpression= "name_count y" />
"active"
DataFormatStrin g="{0:N0}"
HeaderStyle-CssClass="hpad"
HeaderText="Tot al"
HtmlEncode="fal se"
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="50"
SortExpression= "active" />
"activeresa le"
DataFormatStrin g="{0:N0}"
HeaderStyle-CssClass="hpad"
HeaderText="Res ale"
HtmlEncode="fal se"
ItemStyle-Width="50"
ItemStyle-HorizontalAlign ="center"
SortExpression= "activeresl ae" />
"activerefi "
DataFormatStrin g="{0:N0}"
HeaderStyle-CssClass="hpad"
HeaderText="Ref i"
HtmlEncode="fal se"
ItemStyle-Width="50"
ItemStyle-HorizontalAlign ="center"
SortExpression= "activerefi "
/>
"resalepct"
DataFormatStrin g="{0:P1}"
HeaderStyle-CssClass="hpad"
HeaderText="Res ale<br/>Mix"
HtmlEncode="fal se"
ItemStyle-CssClass="vline "
ItemStyle-HorizontalAlign ="right"
ItemStyle-Width="55"
SortExpression= "resalepct"
/>
"escrpo"
DataFormatStrin g="{0:C2}"
HeaderStyle-CssClass="hpad"
HeaderText="per <br/>Order"
HtmlEncode="fal se"
ItemStyle-CssClass="vline "
ItemStyle-HorizontalAlign ="right"
ItemStyle-Width="75"
SortExpression= "escrpo" />
"opentm"
DataFormatStrin g="{0:N0}"
HeaderStyle-CssClass="hpad"
HeaderText="New "
HtmlEncode="fal se"
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="50"
SortExpression= "opentm" />
"closedtm"
DataFormatStrin g="{0:N0}"
HeaderStyle-CssClass="hpad"
HeaderText="Clo sed"
HtmlEncode="fal se"
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="50"
SortExpression= "closedtm"
/>
"hpad"
HeaderText="Pro j."
HtmlEncode="fal se"
ItemStyle-CssClass="vline "
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="50"
SortExpression= "projectedt m" />
"escrowrank "
DataFormatStrin g="{0:N0}"
HeaderStyle-CssClass="hpad"
HeaderText="Clo sed<br/>Esc."
HtmlEncode="fal se"
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="50"
SortExpression= "escrowrank "
/>
"revenueran k"
DataFormatStrin g="{0:N0}"
FooterStyle-HorizontalAlign ="center"
HeaderStyle-CssClass="hpad"
HtmlEncode="fal se"
HeaderText="Clo sed<br/>Rev."
ItemStyle-HorizontalAlign ="center"
ItemStyle-Width="50"
SortExpression= "revenueran k" />
"gridView" EventName="Sort ing" />
protected void load_gv(string _sproc, string _param)
{
using (FADataBase faDb = DBHelper.GetDat abase(FAUser))
{
string errorString;
try
{
DataTable dt = faDb.oneparamDt (_sproc, _param, out
errorString);
DataView dv = new DataView(dt);
gridView.DataSo urce = dv;
gridView.DataBi nd();
}
catch (dbExecExceptio n sex)
{
errorMessage(se x.ToString());
}
}
}
public void gv_OnSorting(ob ject sender, GridViewSortEve ntArgs e)
{
GridView tempG = (GridView)sende r;
string asdf = tempG.ID.ToStri ng();
if ((string)ViewSt ate["sort"] == "desc" &&
(string)ViewSta te["lastSort"] == e.SortExpressio n)
{
ViewState["sort"] = "asc";
e.SortDirection = SortDirection.A scending;
}
else
{
ViewState["sort"] = "desc";
e.SortDirection = SortDirection.D escending;
}
ViewState["lastSort"] = e.SortExpressio n;
}
The load_gv() basically gets a stored procedure name and then gets a
DataView and binds it to the GridView. My custom OnSorting method
doesn't work. Nothing sorts at all. However, even when I turn off
custom sorting and revert back to the standard sort, nothing sorts
there either. Is it something to do with the DataView? Usually I use a
SQLDataSource. Does anyone know what the issue is? Thanks.