2017-06-11 4 views
0

私はXamarinの初心者です。私はsqliteリクエストの注文を行う方法を探していますが、それは動作していません。私はここにボタンXamarinリクエストで注文

をクリックすると、ASCまたはDESCで、私のリストビューをソートしたい

は私のボタンです:ここ

<Button Text="sort" WidthRequest="40" HeightRequest="40" Clicked="OnSort" /> 

は私Methodeのである:ここでは

void OnSort(object sender, EventArgs args) 
{ 

    var words = mywordsdatabase.SortWords(); 
    listWordsView.ItemsSource = words; 
} 

です私のデータベースメソッド: //並べ替えの順序

public List<MyWords> SortWords() 
{ 
    var myword = (from word in conn.Table<MyWords>() 

     orderby word.ID descending 

     select word); 

    return myword.ToList(); 
} 
+0

「作業していない」という症状を指定する必要があります。 – woelliJ

+0

ボタンを押して並べ替えると、何も起こりません。 – hugo

+0

何が起こりますか?前と後の違いは何ですか?期待される成果は何でしょうか?発生する出力は何ですか? – Yunnosch

答えて

0

リストをソートする場合は、LINQを使用してください。はあなたが昇順/降順でソートしたい場合は、チェックするためにこの

public List<MyWords> SortWords(bool sortAscending) 
{ 
    var wordList = conn.Table<MyWords>(); 

    if(sortAscending){ 
     return wordList.OrderBy(w=>w.ID).ToList(); 
    } 
    else{ 
     return wordList.OrderByDescending(w => w.ID).ToList(); 
    } 
} 

のようなものをブールフラグを使用し、リストビューは、あなたのボタンクリックイベント

でこれを行う更新する

EDIT

listWordsView.ItemsSource = null; listWordsView.ItemsSource = mywordsdatabase.SortWords(); 
+0

ありがとうございますが、ボタンをクリックしたとき降順または昇順で注文すると – hugo

+0

この 'wordList.OrderBy(w => w.ID).ToList();' – Fahadsk

+0

と使用できません:wordList。 OrderBy(w => w.ID).ToList();何も起こらない – hugo