- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我第二次点击它时,我将能够取消选择我的项目。当我点击一个项目时,背景颜色变为蓝色。当我第二次点击列表中的同一项目时,我希望背景获得默认颜色。您可以在这里找到我的代码,但它不起作用。
<StackLayout Margin="5,0,5,0" HorizontalOptions="FillAndExpand" VerticalOptions="CenterAndExpand">
<Frame Style="{StaticResource StandardFrameStyle}" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">
<ListView x:Name="lst_pickList" ItemSelected="OnItemSelected" ItemTapped="OnItemTapped" ItemsSource="{Binding PickList}" HasUnevenRows="True" Style="{StaticResource StandardListViewStyle}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ViewCell.View>
<Grid x:Name="grd_pickList" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" >
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label x:Name="lbl_comment" Text="Comment:" FontAttributes="Bold" Grid.Row="0" Grid.Column="0" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_itemNo" Text="ItemNo:" FontAttributes="Bold" Grid.Row="0" Grid.Column="2" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_description" Text="Description:" FontAttributes="Bold" Grid.Row="1" Grid.Column="0" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_restant" Text="Restant:" FontAttributes="Bold" Grid.Row="1" Grid.Column="2" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_comment_binding" Text="{Binding Comment}" Grid.Row="0" Grid.Column="1" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_itemNo_binding" Text="{Binding ItemNo}" Grid.Row="0" Grid.Column="3" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_description_binding" Text="{Binding Description}" Grid.Row="1" Grid.Column="1" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
<Label x:Name="lbl_restant_binding" Text="{Binding Restant}" Grid.Row="1" Grid.Column="3" VerticalTextAlignment="Center" Style="{StaticResource StandardLabelStyle}" />
</Grid>
</ViewCell.View>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Frame>
</StackLayout>
public void OnItemTapped(object sender, ItemTappedEventArgs args)
{
var newSelectedPick = args.Item as Pick;
if(selectedPick != null && selectedPick.Id == newSelectedPick.Id)
{
lst_pickList.SelectedItem = null;
}
else
{
selectedPick = newSelectedPick;
}
}
最佳答案
在名为 IsSelected
的 Pick
对象上创建一个 boolean
属性,然后将其Bind
到您的 grd_pickList
的 BackgroundColor
带有转换器。
即:
//Xaml
<ListView.Resources>
<ResourceDictionary>
<local:BgConverter x:Key="BgConverter"/>
</ResourceDictionary>
</ListView.Resources>
<Grid x:Name="grd_pickList" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" BackgroundColor="{Binding IsSelected,Converter={StaticResource BgConverter}}" >
//转换器
class BgConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool &&(bool)value)
return Color.Blue;
else
return Color.White;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotSupportedException();
}
}
//Xaml.cs
public void OnItemTapped(object sender, ItemTappedEventArgs args)
{
var itm = args.Item as Pick;
itm.IsSelected = !itm.IsSelected;
}
重要:确保 IsSelected 属性触发 OnPropertyChanged
事件。
关于c# - Xamarin 表单 ListView : Deselecting selected item by checking with OnTapped Event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39265968/
突出显示此网页上的一些文本,然后基本上单击文档上的任意位置。您的选择将会消失。 有没有办法在用户点击特定元素时通过 CSS 或 Javascript 阻止这种行为? 例如: var element =
我已经编写了一个 Django 自定义管理操作 ( https://docs.djangoproject.com/en/1.7/ref/contrib/admin/actions/ )。这种类型的东西
当我制作 JFrame 时,JFrame 顶部的内容会自动“选择”。 JFrame/JDialog 顶部的所有内容都将被“选择”,例如 JButton、JTextField,...如何在不使用鼠标单击
首先,我要感谢 Shree,他清理并提高了我以前的代码的性能 here 无论如何,我有一些代码可以让用户选择一个或多个物种(来自 selectizeInput)。该应用程序在 map 上向您显示物种分
使用JQGrid,我知道选择一行时的onSelectRow事件。 我想知道当您因为选择了另一行而取消选择一行时是否会发生事件。 谢谢 最佳答案 您仍然可以创建自定义事件: onSelectRow: f
我正在用 OrderDetailsArray 填充我的 tableView。然后在 DidSelect 上,我将值添加到 reorderArray。如何在点击 DidDeSelect 时从数组中删除值
我有一个页面执行 Ajax 请求,每秒替换一个 div。该 div 中也有超链接。 如果用户尝试单击其中一个超链接,它将起作用,但如果他们将光标移动到链接上,等待一秒钟而不移动光标,超链接将不再具有“
我正在将 Bootstrap 框架与 Bootstrap Select 一起使用插件。 这是一个常规的选择标签,不是多个,这是我使用的代码: 哪里get_food()函数简单地打印 带有
我正在寻找一种方法来检测何时取消选择 Google map 上的标记。我有一个滑动抽屉,在用户点击标记之前, handle 是不可见的,一旦标记被“取消选择”,我想让它再次不可见。我已尝试使用 mar
我有一个多选 chzn-select-deselect 框。当我选择一个特定值时,我想一次选择多个值。我有以下 HTML: parent1 child1 of par
有没有办法用 Excel VBA 取消选择单元格?我的情况是我有一个工作表双击事件,所以必须选择单元格才能运行宏。但这会在选定的单元格中留下一个闪烁的光标。 宏完成后如何取消选择单元格?我在谷歌上搜索
看起来,如果您从“已选择”列表中取消选择某个项目,那么您就无法改变主意并再次选择它。网站提供的“表单”示例中也很清楚: http://jsfiddle.net/awnry/QzjTs/ 如果取消选择项
我有多选下拉菜单。每当有选择或取消选择时,我都需要获取该值。我正在使用更改事件,但很难确定选择/取消选择了哪个选项。 最佳答案 //all options var all=[]; $('#multip
我需要在 Fabric.js 1.7.19 中禁用选定对象的取消选择。我试过: object.on('deselected', function(e) { canvas.setActive
当我启动 eclipse 时,项目浏览器窗口没有显示我的任何项目。如果我在项目资源管理器中打开菜单,它会显示“多个工作集”被选中。为了查看我的项目,我必须单击“取消选择工作集”,然后所有项目都会神奇地
是否有某种方法可以检测 JTextField 是否被取消选择,即字段被选中但现在您选择了其他内容。我想这样做的原因是因为我想在他们尝试提交数据之前检查我的用户表单是否有任何非法字符。如果有更简单的方法
我有 UILabel,我需要它能够支持复制和粘贴(实际上只能复制,因为它是只读的)。我对 UILabel 进行了子类化以支持复制,并且它工作正常。我还添加了文本突出显示,以便用户在单击标签时知道他到底
我有一个 SAPUI5 SelectDialog。它包含多个条目。现在,UI5 提供了使用 showClearButton="true" 清除所有选定值的属性 我想要实现什么?我想实现类似的功能,以在
我想使用 react-select multi Select 组件并且能够多次选择相同的选项。但是,react-select 不允许这样做。您可以使用 hideSelectOptions={false
嗯,我有一个包含用户数据的表和用于更改所选用户的按钮。该表上有一个监听器:当我双击表项时,我的按钮将启用(因为出现了所需的用户)。问题是如何在我的表格上创建一个监听器,它将检测到我的表格中没有选定的项
我是一名优秀的程序员,十分优秀!