2013-05-15 4 views
0

새 데이터를 sqlite에 (buttonclick으로) 삽입 한 다음 새 데이터를 볼 수 있도록 itemlist를 새로 고치는 방법 앱을 다시 시작하십시오. 나는 win32app을 만들기 위해 javacript & html을 사용한다.sqlite (javascript & html)에 새 데이터를 삽입 할 때 winapp에서 itemsList를 새로 고치는 방법

응용 프로그램에서 데이터 바인딩을 사용하지 않았습니다. 내가 sqlite가에 내 데이터를 삽입 버튼을 클릭하고 목록보기가 그래서 난 내 모든 datas는 새로운 하나를 포함 볼 수 있습니다 새로 고칠 때

// Because we're doing the rendering, we need to put the data into the item. 
     // We can't use databinding. 
     result.getElementsByClassName("item-image")[0].src =currentItem.data.backgroundImage; 
     result.getElementsByClassName("item-note-day")[0].textContent = currentItem.data.noteDay; 
     result.getElementsByClassName("item-iconClassImage")[0].src = currentItem.data.iconImage; 
     result.getElementsByClassName("item-noteTitle")[0].textContent = currentItem.data.noteTitle; 
     result.getElementsByClassName("item-noteExcerpt")[0].textContent = currentItem.data.noteContent; 
     return result; 

은 내가 원하는 것입니다. 그리고 성공적으로 내 데이터를 sqlite에 삽입했습니다.

죄송합니다. 저는 중국어로, 이것은 처음으로 영어로 질문합니다. 나 분명하지 않니? 누구든지 나를 도울 수 있다면, 고마워.

+0

어떤 SQLite 구성 요소를 사용합니까? 데이터 바인딩을 사용하지 않으므로 WinJS.UI.ListView도 사용하지 않는다고 가정합니다. 어쨌든, 나는 데이터 바인딩을 사용하여 _ 좋습니다 _ _ 할 수 있습니다. –

+0

WinJS.UI.ListView를 사용합니다. 다른 크기로 listview에 데이터 표시가 필요하므로 databding을 사용할 수 없습니다. 내가 databdingding을 사용하면 내가 원하는 다른 크기로 내 데이터를 설정할 수 없습니다. 이것은 msdn의 샘플입니다. 음, 데이터 바인딩을 사용하여 새로 고치는 방법은 무엇입니까? 고맙습니다. @ma_il – rick

+0

여전히 데이터 바인딩을 사용하고 다른 크기의 항목을 표시 할 수 있습니다. 그것은 http://msdn.microsoft.com/en-us/library/windows/apps/jj585523.aspx를 참조하십시오. 어쨌든, 어떤 SQLite 구성 요소를 사용합니까? –

답변

0

이 SQLite 구성 요소에는 두 가지 접근 방법이 있습니다. 첫째, 단순한 하나 그것을 데이터 변경에

  1. 사용 (a 샘플 see the unit tests) 구성 요소에 의해 제공되는 itemDataSource
  2. 호 invalidateAll. 데이터베이스의 listener registered for insert events 또는 트리거하는 응용 프로그램 별 이벤트를 통해

여기의 문제는 물론 항상 전체 목록을 다시로드한다는 점입니다. 두 번째 방법은 고유 한 IListDataSource 인터페이스를 구현하는 것입니다.이 인터페이스는 훨씬 더 복잡해 질 수 있습니다. 나는 우리 애플 리케이션을 위해 이것을했고 현재 내 애완 동물 프로젝트를 위해 이것을 추상화하고 재사용 가능한 버전으로 작업하고 있지만 불행히도 출시 일정이 언제 예정되어 있는지는 알 수 없다.