PC Review Forums Newsgroups Microsoft DotNet Microsoft Dot NET Compact Framework Sorting DataGrid via SqlCeResultSet verses DataTable?

Reply

Sorting DataGrid via SqlCeResultSet verses DataTable?

 
Thread Tools Rate Thread
Old 03-10-2005, 09:43 PM   #1
Jen
Guest
 
Posts: n/a
Default Sorting DataGrid via SqlCeResultSet verses DataTable?


I have used the code below in the past to sort a data grid column. Now I'm
using a SqlCeResultSet as my DataSource for the grid.



Since the SqlCeResultSet is new to me I was hoping someone could point out
what needs to be converted to support using a resultset instead of a
DataTable.



Thanks!



// Sort grid by column
void SortGrid(int col)
{


if (this.DataSource is DataTable)
this.DataSource = (this.DataSource as
DataTable).DefaultView;


DataView vw = (DataView)this.DataSource;
string sort = vw.Table.Columns[col].ColumnName;

if (vw.Sort.StartsWith(sort))
{
if (vw.Sort.EndsWith("ASC"))
vw.Sort = sort + " DESC";
else
vw.Sort = sort + " ASC";
}

else
{
vw.Sort = sort + " ASC";
}
}


  Reply With Quote
Old 03-10-2005, 10:16 PM   #2
Ilya Tumanov [MS]
Guest
 
Posts: n/a
Default Re: Sorting DataGrid via SqlCeResultSet verses DataTable?

You can not sort/filter RS. You have to get new sorted/filtered RS using
respective SQL query and bind it to the grid.

Don't forget to dispose of an old RS.


Best regards,

Ilya

This posting is provided "AS IS" with no warranties, and confers no rights.

*** Want to find answers instantly? Here's how... ***

1. Go to
http://groups-beta.google.com/group...framework?hl=en
2. Type your question in the text box near "Search this group" button.
3. Hit "Search this group" button.
4. Read answer(s).

"Jen" <jpierce2@austin.rr.com> wrote in message
news:eE3PYsFyFHA.3236@TK2MSFTNGP14.phx.gbl...
>I have used the code below in the past to sort a data grid column. Now I'm
>using a SqlCeResultSet as my DataSource for the grid.
>
>
>
> Since the SqlCeResultSet is new to me I was hoping someone could point out
> what needs to be converted to support using a resultset instead of a
> DataTable.
>
>
>
> Thanks!
>
>
>
> // Sort grid by column
> void SortGrid(int col)
> {
>
>
> if (this.DataSource is DataTable)
> this.DataSource = (this.DataSource as
> DataTable).DefaultView;
>
>
> DataView vw = (DataView)this.DataSource;
> string sort = vw.Table.Columns[col].ColumnName;
>
> if (vw.Sort.StartsWith(sort))
> {
> if (vw.Sort.EndsWith("ASC"))
> vw.Sort = sort + " DESC";
> else
> vw.Sort = sort + " ASC";
> }
>
> else
> {
> vw.Sort = sort + " ASC";
> }
> }
>



  Reply With Quote
Old 03-10-2005, 10:26 PM   #3
Jen
Guest
 
Posts: n/a
Default Re: Sorting DataGrid via SqlCeResultSet verses DataTable?

Thanks

You saved me alot of time

"Ilya Tumanov [MS]" <ilyatum@online.microsoft.com> wrote in message
news:43419f91$1@news.microsoft.com...
> You can not sort/filter RS. You have to get new sorted/filtered RS using
> respective SQL query and bind it to the grid.
>
> Don't forget to dispose of an old RS.
>
>
> Best regards,
>
> Ilya
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
> *** Want to find answers instantly? Here's how... ***
>
> 1. Go to
> http://groups-beta.google.com/group...framework?hl=en
> 2. Type your question in the text box near "Search this group" button.
> 3. Hit "Search this group" button.
> 4. Read answer(s).
>
> "Jen" <jpierce2@austin.rr.com> wrote in message
> news:eE3PYsFyFHA.3236@TK2MSFTNGP14.phx.gbl...
>>I have used the code below in the past to sort a data grid column. Now I'm
>>using a SqlCeResultSet as my DataSource for the grid.
>>
>>
>>
>> Since the SqlCeResultSet is new to me I was hoping someone could point
>> out what needs to be converted to support using a resultset instead of a
>> DataTable.
>>
>>
>>
>> Thanks!
>>
>>
>>
>> // Sort grid by column
>> void SortGrid(int col)
>> {
>>
>>
>> if (this.DataSource is DataTable)
>> this.DataSource = (this.DataSource as
>> DataTable).DefaultView;
>>
>>
>> DataView vw = (DataView)this.DataSource;
>> string sort = vw.Table.Columns[col].ColumnName;
>>
>> if (vw.Sort.StartsWith(sort))
>> {
>> if (vw.Sort.EndsWith("ASC"))
>> vw.Sort = sort + " DESC";
>> else
>> vw.Sort = sort + " ASC";
>> }
>>
>> else
>> {
>> vw.Sort = sort + " ASC";
>> }
>> }
>>

>
>



  Reply With Quote
Old 03-10-2005, 10:42 PM   #4
Darren Shaffer
Guest
 
Posts: n/a
Default Re: Sorting DataGrid via SqlCeResultSet verses DataTable?

Jen,

The ResultSetView, unlike the DataView, does not expose a Sort member, but
does implement the IBindingList interface and exposes an ApplySort method

which you could implement. Sorry I don't have a sample of that handy, but

there are examples of implementing ApplySort on the web.

--
Darren Shaffer
..NET Compact Framework MVP
Principal Architect
Connected Innovation
www.connectedinnovation.com


"Jen" <jpierce2@austin.rr.com> wrote in message
news:eE3PYsFyFHA.3236@TK2MSFTNGP14.phx.gbl...
>I have used the code below in the past to sort a data grid column. Now I'm
>using a SqlCeResultSet as my DataSource for the grid.
>
>
>
> Since the SqlCeResultSet is new to me I was hoping someone could point out
> what needs to be converted to support using a resultset instead of a
> DataTable.
>
>
>
> Thanks!
>
>
>
> // Sort grid by column
> void SortGrid(int col)
> {
>
>
> if (this.DataSource is DataTable)
> this.DataSource = (this.DataSource as
> DataTable).DefaultView;
>
>
> DataView vw = (DataView)this.DataSource;
> string sort = vw.Table.Columns[col].ColumnName;
>
> if (vw.Sort.StartsWith(sort))
> {
> if (vw.Sort.EndsWith("ASC"))
> vw.Sort = sort + " DESC";
> else
> vw.Sort = sort + " ASC";
> }
>
> else
> {
> vw.Sort = sort + " ASC";
> }
> }
>



  Reply With Quote
Reply



Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off