2011-07-29 6 views
0

이 내 모음입니다 : 나는 내 컬렉션이 방법을 내보낼 저장 한 클래스가C#. WPF. ObservableCollection에 현재 항목을 어떻게 얻을

ObservableCollection<CheckInData> _CheckInCollection = new ObservableCollection<CheckInData>(); 
public ObservableCollection<CheckInData> CheckInCollection 
{ 
    get { return _CheckInCollection; } 
} 

public class CheckInData 
{ 
    public string RoomNumber { get; set; } 
    public string Price { get; set; } 
    public string Currecny { get; set; } 
    public string Discount { get; set; } 
    public string CheckOut { get; set; } 
    public string TotalDay { get; set; } 
    public decimal TotalPrice { get; set; } 
    public int CheckOutYear { get; set; } 
    public int CheckOutMonth { get; set; } 
    public int CheckOutDay { get; set; } 
    public Boolean IncToday { get; set; } 
    public string CheckIn { get; set; } 
    public decimal MoneyRate { get; set; } 
} 

:

foreach (CheckInData coll in CheckInCollection) 
{ 
    var roomType = (from d in db.SelectRooms where d.roomnumber == coll.RoomNumber select d.roomtype).SingleOrDefault(); 
    inv._RoomType.Add(roomType.ToString()); 
    inv._RoomNumber.Add(coll.RoomNumber.ToString()); 
    inv._CheckIn.Add(coll.CheckIn); 
    inv._CheckOut.Add(coll.CheckOut); 
    inv._DayNight.Add(coll.TotalDay); 
    inv._RoomPrice.Add(coll.Price); 
    inv._Discount.Add(coll.Discount); 
} 

이 코드는 완벽하게 작동합니다. 나는이 관찰 할 수있는 컬렉션을 바인딩하는 목록보기가 내 질문은 어떻게 inv._RoomType, inv._RoomNumber ... (행) listview에서 선택한 컬렉션에 삽입 할 수 있습니다. inv._RoomNumber.Add(coll.RoomNumber(listview selected items? ??)) 감사합니다.

답변

2

CheckInData 클래스에 IsSelected 속성을 추가 한 다음 ListView에서 IsSelected 속성을 바인딩해야합니다. 다음과 같이 말할 수 있습니다

foreach (CheckInData coll in CheckInCollection.Where(s => s.IsSelected)) 
{ 
... 
+0

감사합니다. 나에게 불분명했다. 그 코드를 작성할 수 있습니까? :) –

0

설명에서 ListView UI 컨트롤에서 선택한 모든 항목을 가져와야합니다.

그렇다면 ListView는 다중 선택을 사용하는지 여부에 따라 ListView.SelectedItem 또는 ListView.SelectedItems의 두 가지 속성을 제공합니다.

이 항목을 여러 개 선택한다고 가정 해 보겠습니다. 다음 코드는 질문에 도움이됩니다.

foreach(var item in listView.SelectedItems) 
    YourClass.Insert(item as CheckInData); 
관련 문제