2016-12-06 60 views
2

我有ListView控件Xamarin窗體ListView數據綁定嵌套對象

<ListView x:Name="ForecastView"> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <TextCell Text="{Binding mainData.Temperature}" /> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

我試圖用.訪問它嵌套屬性綁定簡單的頁面。我的項目源:

private ObservableCollection<ForecastData> forecast = new ObservableCollection<ForecastData>(); 

我設置它的構造函數:

ForecastView.ItemsSource = forecast; 

我的模型看起來像這樣:

public class ForecastData 
    { 
     public MainData mainData; 
..... 
public class MainData 
    { 
     public double Temperature; 
... 

休息後打電話給我的名單是由元素組成的(我可以選擇它們),但文本屬性是空白的。你能幫我弄清楚什麼是錯的。我已經嘗試了一切,沒有任何幫助(我已閱讀堆棧溢出所有類似的問題)。

+1

「Ta柳形式」 – devRicher

+0

自動更正。 – Preetygeek

+0

嘗試閱讀這裏:http://stackoverflow.com/questions/36985634/xamarin-forms-databinding-separator,http://stackoverflow.com/questions/31041542/how-to-bind-to-a-nested- class-wpf和http://stackoverflow.com/questions/14546347/how-to-use-nested-class-in-wpf-xaml。 – EgoPingvina

回答

5

問題是你正試圖綁定到公共領域。

您只能綁定到屬性。

因此改變:

public MainData mainData; 

要:

public MainData mainData { get; set; } 

,它應該工作!

當然也爲Temperature

+0

我愛你傑拉爾德! – Preetygeek

+1

好的,謝謝!我已經盯着它一段時間了,然後你永遠不會忘記! –

+0

是的,整整兩天的神經。現在我會永遠記住! – Preetygeek