如何绑定和排序集合

2024-04-20

如果我有一个未排序的集合,是否有一种简单的方法来对其进行绑定和排序。我想用 XAML 来做(没有 Linq,没有 C#)

如果我的 DataContext 有一个属性,例如 MyItems,则很容易对其进行绑定:

<ListBox ItemsSource={Binding MyItems}/>

不过,我也想对其进行排序。使用 CollectionViewSource 应该是解决方案,但它对我不起作用:

<ListBox>
 <ListBox.ItemsSource>
  <Binding>
   <Binding.Source>
    <CollectionViewSource Source={Binding MyItems}/>
   </Binding.Source>
  </Binding>
 </ListBox.ItemsSource>
</ListBox>

此时,我的列表框丢失了它的元素。 我错过了一些明显的事情吗?


您可以定义CollectionViewSource作为资源并提供您想要的排序...

<Window.Resources>
    <CollectionViewSource x:Key="cvs" Source="{Binding MyItems}">
        <CollectionViewSource.SortDescriptions>
            <scm:SortDescription PropertyName="MyItemName" Direction="Ascending"/>
        </CollectionViewSource.SortDescriptions>
    </CollectionViewSource>
</Window.Resources>
<Grid>
    <ListBox ItemsSource="{Binding Source={StaticResource cvs}}"/>
</Grid>

The scm命名空间是xmlns:scm="clr-namespace:System.ComponentModel;assembly=WindowsBase"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何绑定和排序集合 的相关文章

  • 如何在WinForms中将字典绑定到ListBox

    是否可以将字典绑定到列表框 保持列表框和成员属性之间的同步 var choices new Dictionary
  • C#:如何在虚拟模式下有效过滤(隐藏)ListView 项目?

    C 如何在虚拟模式下有效过滤 隐藏 ListView 项目 我正在寻找一种在虚拟模式下过滤 隐藏 显示 ListView 中的项目的方法 我将我的项目缓存在列表视图项目数组中 如何有效地使其在按下过滤按钮时仅显示特定的列表视图项目 然后在按
  • 带有 TextWrapping 的 WPF CheckBox 样式

    我需要申请一个TextWrapping在 WPF 中CheckBox 请看这两个示例
  • 是否可以更改 WPF 控件的父级

    是否可以更改 WPF 控件的父控件 这是一个例子 StackPanel堆栈1有Buttonbtn1 在里面 还有一个空的StackPanel堆栈2 我想以编程方式将 btn1 移动到 stack2 谢谢您的帮助 您可以通过以下方式执行此操作
  • 如何为RenderTargetBitmap的输出设置透明度颜色?

    我正在尝试使用 RenderTargetBitmap 将具有透明背景的 Visual 对象保存到位图 public static RenderTargetBitmap RenderToBitmap this Visual Source in
  • 更改列表视图中的确切滚动位置

    一直在网上寻找答案 但我还没有找到任何可以做到这一点的东西 我想以编程方式更改 WPF 列表视图中的确切位置 某种说法 ListView Scrollposition Y some value 我唯一能找到的就是将值更改为列表视图中的对象
  • 将静态类的字符串变量数据绑定到 Phone 7 中的 textBlock?

    这是 C 代码 public static class Global public static string Temp get return temp set temp value public static string temp 10
  • 如何仅使用 XAML 标记在单击另一个控件时打开 WPF 弹出窗口?

    我有两个控件 一个 TextBlock 和一个 PopUp 当用户在文本块上单击 MouseDown 时 我想显示弹出窗口 我认为我可以使用弹出窗口上的 EventTrigger 来完成此操作 但我不能在 EventTrigger 中使用设
  • WPF 列表框在鼠标悬停时选择项目

    我正在尝试为列表框创建一种样式 当鼠标放在该项目上时 该样式会将所选项目设置为该项目 有什么提示吗 您可以使用 ListBox 本身影响其所有项目的样式来完成此操作
  • 学习 WPF 会提高我的 ASP.NET 技能吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我已经在 Windows 窗体领域工作了很多年 而且仍然如此 我完全不熟悉 ASP NET 技术 也不熟悉其他 Web 相关技术 我曾合作过 O
  • 以编程方式将 Word 文件另存为图片

    我想将Word文档的第一页另存为图片 使用 C 有什么方法可以做到这一点 您可以将 Word 文档打印到 XPS 文档 在 WPF Net 3 5 应用程序中打开它 并使用 WPF 框架的文档和图像功能将第一个内部固定页面对象转换为位图 如
  • 发生 XMLParseException

    对类型 WpfApplication1 MainWindow 的构造函数的调用 与指定的绑定约束匹配的抛出异常 行号 4 和行位置 9 这是我在将目标平台从 x86 更改为 任何 CPU 以便运行我的可执行文件以在 x86 和 x64 位
  • WPF TextBlock 元素和 Label 控件有什么区别? [复制]

    这个问题在这里已经有答案了 从视觉上看 以下两个片段都生成相同的 UI 那么为什么有2个控件 Snippet1
  • 如何使用 Kinect 追踪一个人 (trackingID)

    我想跟踪第一个人 并使用这个人的右手在我制作的应用程序中导航 我可以接管光标 现在我只想跟踪一个人 因此 基本上 当一个人在程序中导航时 有人走在他身后或与这个人一起看 如果他们移动 kinect 不应该识别其他任何人 我怎样才能实现这个
  • 以编程方式将内容添加到滚动查看器,滚动条停止工作

    好吧 我不太熟悉强大的 WPF 但我尝试了一个有趣的项目来跳入其中 我制作了一个简单的 RSS ATOM 提要查看器 它从 RRS 或 ATOM 提要中提取 HTML 并将其粘贴到浏览器控件中 该控件添加到堆栈面板中 这是 ScrollVi
  • ASP.NET 代码表达式、数据绑定和其他声明式表达式

    这些标签有什么区别 更重要的是 如何在 ASP NET 控件中使用声明性语法显示页面属性 我正在尝试在 ASP NET 控件中执行此操作 任务是设置标签的文本 但如果我想更改输出控制 我不想以语法方式执行此操作 我收到有关服务器端控件不能包
  • 了解用户是否更改了 DataGrid 中的数据的最佳方法是什么?

    我想知道每次用户修改 WPF DataGrid 中的数据时 我可以使用一个事件来做到这一点吗 或者我可以用来覆盖全套数据更改 添加行 删除行 修改行等 的最小事件集是什么 我知道这可能超出了你的要求 但是一旦你这样做了 就很难回头了 无论您
  • 在 WPF 中显示 Drawing.Image

    我有一个 System Drawing Image 的实例 如何在我的 WPF 应用程序中显示这一点 我尝试过img Source但这不起作用 我有同样的问题并通过结合多个答案来解决它 System Drawing Bitmap bmp I
  • 运行时动态转换

    有没有一种方法可以在运行时动态转换 如以下伪代码 foreach DataRow row in table Rows foreach DataColumn col in table Columns if row col DBNull Val
  • 使用 MVVM 在 WPF 中打印 TreeView

    我有一个树视图来从文本文件返回文本搜索结果

随机推荐

  • Android InstantiationException With Fragment(它是公共的)

    我有一个Fragment 它不是内部类 并且没有任何构造函数 public class PreferenceListFragment extends ListFragment implements OnClickListener 我在 An
  • 如何将 JSON 映射到 C# 对象

    我在理解如何实现这一点方面遇到了问题 基本上我们有一个 API 用户发送以下格式的 JSON Profile Name Joe Last Doe Client ClientId 1 Product Apple Message Peter l
  • 由于触发器执行,登录“用户”登录失败

    我在部署的 ASP NET Web 应用程序上随机收到此错误 我没有在数据库中使用任何触发器 所以我不知道该怎么做 这是在周末没有人参与申请时出现的 它只是随机发生的 请帮助这是关键任务 这是我收到错误的第一个实例 public stati
  • 如何从 C# 中的本机 dll 捕获 c0000005 异常

    我正在使用一个本机 dll 该 dll 在某处抛出 c0000005 异常 访问冲突 并最终导致我的 Web 服务崩溃 直到该服务被回收 有没有办法捕获异常 我同意其他人的观点 解决问题 但有时您继承代码 而您只想捕获生产中的意外违规 在
  • 有什么办法可以提高 BitmapFactory.decodeStream() 的速度?

    显然这是一项昂贵 耗时的操作 有什么办法可以改善这个情况吗 Bitmap bm BitmapFactory decodeStream InputStream new URL someUrl getContent 我猜想确实没有办法避免这种相
  • 配置具有超过 16 个项目的 UITabBar

    My UITabBarController包含超过 16 个视图控制器 当我进入 更多 选项卡时 我可以看到所有UITabBarItems 如果我单击 编辑 按钮 我可以看到前 16 个图标 但没有足够的空间来显示更多图标 因此从第 17
  • 从 C# 打印标签 - 文档尺寸对于打印机来说太大

    我正在开发一个必须打印标签的应用程序 我使用的标签打印机是 Brother QL 570 标签宽度为66mm 标签长度需要约为45mm 我遇到的问题是我无法配置应用程序来实际打印标签 每次这样做时 我都会收到一条警告 指出文档尺寸对于打印机
  • 无法在表视图中使用自动布局约束

    我有这个表视图 无法添加任何自动布局约束 控件拖动不起作用 没有显示任何约束 并且构建器表单似乎处于非活动状态 我无法在其中设置任何值 见下文 自动布局在整个项目的任何地方都启用 基本上在每个视图上 这是为什么 这是因为您选择了单元格或单元
  • WARN 获取相关 ID 为 1 的元数据时出错:{MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)

    当我使用 kafka 运行以下命令时0 9 0 1 我收到这些警告 1 你能告诉我我的主题有什么问题吗 我正在与在 ec2 中运行的 kafka 经纪人交谈 kafka console consumer sh new consumer bo
  • iOS FFT Accerelate.framework 在播放期间绘制频谱

    更新2016 03 15 请看一下这个项目 https github com ooper shlab aurioTouch2 0 Swift https github com ooper shlab aurioTouch2 0 Swift
  • java中如何让SSL服务器socket同时支持http和https?

    我正在尝试使用 java 套接字创建简单的 Web 服务器 它应该支持 http 和 https 但我一次只能实现一个 我需要同时支持 http port 80 和 https port 443 的逻辑 这是使用 sslsocket 的 H
  • “错误LNK2001:无法解析的外部符号”[重复]

    这个问题在这里已经有答案了 我的 VC 2008 程序有问题 当我编译它时 会列出以下错误 我花了很多钱 去groups google com找了一下原因 但是没有评论 帮助过我 有人知道问题是什么吗 谢谢 error LNK2001 un
  • 如何使用 Jackson 解析 JSON 数组响应?

    我正在为 Android 构建一个 RESTful 客户端 我有一个关于 Jackson 的问题 我收到以下 JSON 响应 cars active true carName categoryId licenseType licenseTy
  • 从 OFFSET / FETCH NEXT 获取总行数

    因此 我有一个函数可以返回一些我想在我的网站上实现分页的记录 有人建议我使用 SQL Server 2012 中的 Offset Fetch Next 来完成此操作 在我们的网站上 我们有一个区域列出了记录总数以及您当时所在的页面 之前 我
  • 将命名 URL 的值分配给 Django 模板中的变量

    在我的 Django 模板中 我需要将名称 url 的值分配给 with 块中的变量 以便我可以在多个地方使用它 我需要实现这样的目标 for tag in post tags all with tagabs url showtag tag
  • 检查 JObject 中的空或 null JToken

    我有以下 JArray clients JArray clientsParsed objects foreach JObject item in clients Children etc SQL params stuff command P
  • 在 Android 的 Talkback 辅助功能中将缩写或缩写发音为单个字符

    我正在使用对讲来开发语音辅助功能 但是当画外音从文本视图中读取文本时 它将缩写 首字母缩写作为单词而不是单个字符读取 例如 FBI 应该是 F B I 而不是作为单词读出 不要试图强迫屏幕阅读器以某种方式阅读单词或缩写 这可能会扰乱盲文用户
  • 我真的应该将餐桌预订时间保存为 UTC 吗?

    这可能是一个愚蠢的问题 我提前道歉 但考虑到业务背景 我是否真的需要在数据库中以 utc 格式保存餐桌预订时间 并担心将其转换为网络客户端上的本地时间 预订将始终针对特定位置 地理 城市 进行 因此无论当前与 UTC 的时间偏移是什么 夏令
  • 命名循环习语:危险?

    我读过一篇关于 C 中的 命名循环惯用法 的文章 http en wikibooks org wiki More C 2B 2B Idioms Named Loop http en wikibooks org wiki More C 2B
  • 如何绑定和排序集合

    如果我有一个未排序的集合 是否有一种简单的方法来对其进行绑定和排序 我想用 XAML 来做 没有 Linq 没有 C 如果我的 DataContext 有一个属性 例如 MyItems 则很容易对其进行绑定