c# – 使用WPF转移列表框项目上的单击功能
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 使用WPF转移列表框项目上的单击功能,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1436字,纯文字阅读大概需要3分钟。
内容图文
![c# – 使用WPF转移列表框项目上的单击功能](/upload/InfoBanner/zyjiaocheng/827/5999d59a40a6466cb48ea68ab2416c27.jpg)
我需要在列表框项目上添加功能,用户可以通过单独单击每个项目来选择项目,也可以执行shift单击以选择列表中的一系列项目.
<ListBox ItemsSource="{Binding ItemFields, Mode=TwoWay}"
VerticalAlignment="Stretch" HorizontalAlignment="Left"
Margin="16,156,0,34" Name="fRListbox" Width="499" >
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="IsSelected" Value="{Binding Path=IsSelected, Mode=TwoWay}"/>
<EventSetter Event="PreviewMouseLeftButtonDown" Handler="reportDatagrid_MouseDown"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
在xaml.cs上我写了下面的代码:
private void ListItem_MouseClick(object sender, MouseButtonEventArgs e)
{
if ((e.LeftButton == MouseButtonState.Pressed) && Keyboard.IsKeyDown(Key.RightShift))
{
fRListbox.SelectionMode = SelectionMode.Extended;
}
else if ((e.LeftButton == MouseButtonState.Pressed) && Keyboard.IsKeyDown(Key.LeftShift))
{
fRListbox.SelectionMode = SelectionMode.Multiple;
}
else if (e.LeftButton == MouseButtonState.Pressed)
{
fRListbox.SelectionMode = SelectionMode.Multiple;
}
}
但Shift Click功能无效.
我是WPF的新手任何人都可以指导我.
解决方法:
如果您对用户在单击单个项目时按住Ctrl键(如Windows资源管理器和几乎所有其他类型的列表)选择项目感到高兴,那么将SelectionMode设置为Extended是使用该选项实现单个和多个选择的最简单方法. Ctrl和Shift键.
<ListBox ItemsSource="{Binding ValuesView}" SelectionMode="Extended" />
内容总结
以上是互联网集市为您收集整理的c# – 使用WPF转移列表框项目上的单击功能全部内容,希望文章能够帮你解决c# – 使用WPF转移列表框项目上的单击功能所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。