ItemsSource繫結中遇到的問題

2022-03-01 23:14:12 字數 976 閱讀 5895

乙個bug我查了兩天才查出結果,所以今天特此一記。

我在gridview中繫結了itemssource,但是當資料來源變化時,ui卻沒有變化,設斷點一查,binding的資料在xaml中已經更新了,但是ui就是沒有變化。其實這是由於乙個不好的習慣引起的,就是資料來源用的是list型別。

<

gridview

x:name

="cardlistview"

itemssource=""

>

<

gridview.itemtemplate

>

<

datatemplate

>

...

datatemplate

>

gridview.itemtemplate

>

gridview

>

其中cardlist在viewmodel中是這樣定義的

private list_cardlist = new list();

public listcardlist

set }

}

這樣的話初始資料是可以繫結上的,但是改變cardlist的話,ui的資料不會有變化。

如果想要動態的繫結資料的話,需要將資料集的型別改為observablecollection

private observablecollection_cardlist = new observablecollection();

public observablecollectioncardlist

set }

}

這樣ui就可以顯示新的資料了。

msdn中有對observablecollection的介紹:

以前習慣性的用list,就沒想過是資料集型別的問題,結果弄了兩天,唉。。。。。。

Shell中while read line遇到的坑

今天寫cat檔案,並將結果賦值到陣列中時遇到個坑,while read line之後,我在do done之中進行陣列賦值,最後列印發現陣列為空,錯誤 如下 function testcat 經過查詢,找到以下描述 while read line 是一次性將檔案資訊讀入並賦值給變數line while...

C 中動態繫結和靜態繫結

c 中,非虛函式都是靜態繫結,而虛函式卻是動態繫結。為了能夠更清楚地了解靜態繫結與動態繫結,我們可以看下面這個例子 include using namespace std class b 那麼兩次呼叫fun 函式是否相同呢?當然,如果d中沒有定義fun 函式 如例子中 那麼兩次呼叫的行為肯定會是一樣...

C 中動態繫結和靜態繫結

2009 03 27 15 35 1053人閱讀收藏 舉報c funclass 編譯器c c 中,非虛函式都是靜態繫結,而虛函式卻是動態繫結。為了能夠更清楚地了解靜態繫結與動態繫結,我們可以看下面這個例子 include using namespace std class b 那麼兩次呼叫fun 函...