0
我正在使用Coverflow control in Windows 8 C# XAML App。數據綁定CoverFlow控件的選定項目屬性?
我想將此控件的選定項屬性綁定到屬性,但沒有任何效果。以下是我使用的代碼讓我知道我在做什麼錯誤?
<controls:CoverFlow
Height="85"
Margin="0,40,0,0"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
SpaceBetweenItems="35"
SelectedItem="{Binding DiarySelectedItem.DiarySmileyId}"
SpaceBetweenSelectedItemAndItems="40"
ItemClick="ItemView_ItemClick"
ItemTemplate="{StaticResource 50ItemTemplate}"
ItemsSource="{Binding DiarySmileyIdOC}"
SelectedItemChanged="CoverFlow_SelectedItemChanged" />
/// <summary>
/// Sets and gets the DiarySelectedItem property.
/// Changes to that property's value raise the PropertyChanged event.
/// </summary>
public DiaryItemDetail DiarySelectedItem
{
get { return _diarySelectedItem; }
set
{
if (_diarySelectedItem == value)
{
return;
}
_diarySelectedItem = value;
RaisePropertyChanged(DiarySelectedItemPropertyName);
}
}
/// <summary>
/// Gets or sets the Diary Smiley Id Observable Collection.
/// </summary>
/// <value>
/// The Diary Smiley Id Observable Collection.
/// </value>
public ObservableCollection<int> DiarySmileyIdOC
{
get { return _diarySmileyIdOC; }
set
{
if (_diarySmileyIdOC == value)
{
return;
}
_diarySmileyIdOC = value;
// Update bindings, no broadcast
RaisePropertyChanged(DiarySmileyIdOCPropertyName);
}
}
謝謝達米爾。其實我想詳細說明這個情況。有選擇的字段被設置到此Coverflow控件中的列表視圖。但我不想從Coverflow控件設置回列表視圖。因此,我直接將列表視圖中選定的對象綁定到Coverflow控件。 –
@BalrajSingh我不確定,我正在關注你。你說'DiarySelectedItem'是你的列表視圖中的選定項目,根據你選擇的項目在coverflow中,但你不希望它改變,當你在coverflow中選擇一個項目?您希望將哪個屬性設置爲coverflow中的選定項目? –
其實這是添加/編輯窗體的項目以列表視圖的形式顯示。如果用戶選擇一個項目,它將顯示在編輯表單中,用戶可以通過單擊保存按鈕更改表單中的值,然後更改將保存並反映在列表視圖中。因此,我想將選定項目的值從列表視圖綁定到編輯表單,但是編輯表單值的更改不應直接反映在列表視圖上。當用戶點擊保存按鈕時,應該反映並保存。我想用屬性的綁定來實現這一點。我希望這可以幫助你理解。 –