2016-12-10 19 views
1

私はdbから情報を収集し、リストビュー内でそれらを正常に取得します。 xaml.csページにそれらを集め、xamlにバインドします。リストビューをクリックせずにリストビュー内の特定の行から情報を取得する方法は?

今私は自分のタイトルで言及したように、私のリストビューの特定の行から、例えばボタンを使って情報を取得しようとしています。

下のコードでは、foreachループ内の値を増やすrowIndexというintを作成して、すべての行が一意のIDを取得するようにしています。例えば、ボタンを使って、そのrowIndexに接続された情報を取得するにはどうすればいいですか?たとえば、ボタンを使って行4から情報を取得しようとすると、その行の情報はどのように取得できますか?

public class items 
{ 
    public string name { get; set;} 
    public int rowid { get; set;} 
} 

List<items> theList = new List<items>(); 

void loadVideo() 
{ 
    int rowIndex = 0; 
    var getItems = await getData.MyInfo(); 
    foreach (var item in getItems) 
    { 
     rowIndex = rowIndex + 1; 
     theList.Add(new items 
     { 
      rowid = rowIndex, 
      name = item ["thename"].ToString() 
     } 
    } 

    listview.ItemsSource = theList; 
} 

そして、私のバインディング:

<Label Text = "{Binding name}" /> 

コードで、私は正常に私のリストビューに名前+ rowIndexプロパティを取得し、各行は1-19からの固有の番号を持っている上に(私が19の異なる名前を持っています私のデータベース)。

ここで私は別のボタンを使用して、特定の行から情報を取得しようとしています。だから私が4行目から情報を得たいなら、私は接続された "名前"を取得したい。

void buttonClick (object s, EventArgs e) 
{ 
//so if I want info from row 4 in my listview, how would i accomplish this? 
} 

答えて

2

ListView自体からではなく、ListViewのItemSourceからデータを引き出します。

void button4Click (object s, EventArgs e) 
{ 
    var selectedName = theList[4].name; 
} 
+0

私は思ったより簡単です!ありがとう – Martman

関連する問題