簡體   English   中英

Xamarin.Forms禁用ListView中的項目

[英]Xamarin.Forms disable item in ListView

是否有一種禁用/禁用ListView中的ViewCell的方式? 我一直在瀏覽文檔,但找不到任何東西。 這是我到目前為止所擁有的。

 <ListView x:Name="lvNotes" ItemSelected="OnSelection">
          <ListView.ItemTemplate>
            <DataTemplate>
              <TextCell Text="{Binding Object.Name}" Detail="{Binding Object.Subject}"/>
            </DataTemplate>
          </ListView.ItemTemplate>
        </ListView>

要更改背景,您可以輕松使用觸發器

這是您的listView示例,但帶有觸發器。 當屬性Object.IsActive設置為false時,網格背景將變為灰色。

    <ListView x:Name="lvNotes" ItemSelected="OnSelection">
      <ListView.ItemTemplate>
        <DataTemplate>
            <Grid BackgroundColor="Green">
                <TextCell Text="{Binding Object.Name}" Detail="{Binding Object.Subject}"/>
                <Grid.Triggers>
                    <DataTrigger TargetType="Grid" Binding="{Binding Object.IsActive}" Value="False">
                        <Setter Property="BackgroundColor" Value="Gray"/>
                    </DataTrigger>
                </Grid.Triggers>
            </Grid>
        </DataTemplate>
      </ListView.ItemTemplate>
    </ListView>

我認為您將使用Xamarin.FormsDataTemplateSelector來實現此行為。 從此博客文章中:

假設您要將項目列表放到ListView中,但對某些項目使用其他DataTemplate? 在Microsoft XAML中,您可以將ItemTemplateSelector屬性設置為自定義DataTemplateSelector,然后全部設置好

希望對您有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM