0
我有一個綁定到ObservableCollection(MyObject)的LongListSelector我只想在容器(網格)內顯示圖像時,只有myobject.BoolProperty = True。我怎樣才能做到這一點 ? 不幸的是我們似乎無法從代碼訪問LongListSelector中的元素背後...在我的XAML頁面我要顯示的圖像(IsSuscribed)只有在布爾屬性爲true ...如何僅在bool = true時纔在LongListSelector中顯示元素?
<phone:LongListSelector x:Name="llsAllDoclibs"
LayoutMode="List"
ItemsSource="{Binding}"
HideEmptyGroups="False"
Background="WhiteSmoke"
SelectionChanged="Doclibs_SelectionChanged"
Margin="20,20,20,20"
>
<phone:LongListSelector.ItemTemplate >
<DataTemplate >
<Grid
Height="auto"
Margin="0,20,0,0"
Background="White"
>
<StackPanel Margin="10,10,10,10">
<Image HorizontalAlignment="Right"
VerticalAlignment="Center"
Source="/Images/BDocs/ico_action_valider.png"
x:Name="IsSuscribed"></Image>
<TextBlock
Text="{Binding NomDocLib}"
Foreground="#FF00485A"/>
<TextBlock
HorizontalAlignment="Right"
VerticalAlignment="Top"
Text="{Binding NbrElements}"
Foreground="#FF00485A"/>
</StackPanel>
</Grid>
</DataTemplate>
</phone:LongListSelector.ItemTemplate>
</phone:LongListSelector>
編輯
我實現了這個code.It工作正常。但我想知道如何使用這個類與一個int值。如果值> 10我想顯示我的元素,否則我想隱藏它。我試圖通過一個int替換對象的價值,但我有一個錯誤...
public sealed class BooleanToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo language)
{
return (value is bool && (bool)value) ? Visibility.Collapsed : Visibility.Visible;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo language)
{
return value is Visibility && (Visibility)value == Visibility.Visible;
}
}
感謝您的代碼它工作正常,但實際上我有一個int值,所以我編輯我的問題。你能再幫我一下嗎? –
但你只是寫了嗎?只需替換'Convert'函數中的代碼以適合自己。 'value'參數的類型爲'int',它根據內部邏輯返回'Visibility'(就像上面的'if'語句一樣,並且重命名該類,因爲它不再是從bool到可見性的轉換器。 –