相关疑难解决方法(0)

在列标题单击上进行WPF ListView/GridView排序的最佳方法是什么?

互联网上有很多解决方案试图填补WPF看似非常基本的遗漏.我真的很困惑什么是"最好"的方式.例如......我希望列标题中有小的向上/向下箭头来指示排序方向.显然有3种不同的方法可以做到这一点,有些使用代码,有些使用标记,有些使用标记加代码,而且所有看起来都像是黑客.

有没有人遇到这个问题,并找到了他们完全满意的解决方案?似乎奇怪的是,WPF缺少这样一个基本的WinForms功能,需要被黑客攻击.

sorting wpf listview gridview

78
推荐指数
4
解决办法
10万
查看次数

字体大小独立UI:当我切换到120 DPI时,一切都破了?

所以我正在阅读那些在另一个问题中链接到的Windows Vista UI指南,并且他们提到您应该能够在切换到120 DPI后继续存在.好吧,我安装了我的应用程序,启动了我方便的虚拟机,我们得到了什么... AAAAGH !!! 大规模的UI失败!

一切都是乱七八糟的:一些容器对于他们的文本来说不够大; 一些"彼此相邻"的控件现在都被挤压在一起/分开; 有些按钮不够高; 我的ListView专栏不够广...... eeek.

这听起来像是一种完全不同的方法.我之前的一个基本上是使用VS2008 Windows窗体设计器来创建一个基于像素的布局.我可以看到,如果我坚持使用Windows Forms,FlowLayoutPanels会有所帮助,尽管我发现它们在过去相当不灵活.它们也没有解决容器(例如表格本身)不够大的问题; 大概有办法做到这一点?也许那个AutoSize属性?

这也可能表明是时候跳槽到WPF了; 我的印象是它专门为这种东西而设计.

基本问题似乎归结为以下几点:

  • 如果我坚持使用Windows窗体,那么实现独立于字体大小的布局有哪些技巧可以在用户设置大字体或将显示设置为120 DPI后继续存在?
  • WPF在这方面是否具有显着的优势,如果是这样,你能否试着说服我这是值得转换的?
  • 对于与字体大小无关的布局,是否存在任何通用的"最佳实践",无论是在.NET堆栈中还是在一般情况下?

.net wpf user-interface fonts winforms

11
推荐指数
1
解决办法
4535
查看次数

它只是我,还是WPF的一堆数据绑定和自定义IValueConverters?

说真的,似乎每次我想让我的UI元素互相交谈,我最终编写了一个新的,定制的,IValueConverter :(有人告诉我,我做错了,拜托!

例子:

  • 我希望只有在我的文本框包含有效URI时才启用按钮.很棒,是时候编写一个了UriIsValidConverter!
  • 哎呀,我也想在我处理的时候禁用它.我想我现在需要编码了UriIsValidAndBoolIsFalseMultiConverter!
  • 我想在列表框中显示某个目录(由文本框指定)中的文件列表.我想我需要一个DirectoryPathToFileList转换器!
  • 哦,嘿,我想在列表视图中的每个文件的图标.FileInfoToBitmap转换器的时间!
  • 如果我的状态字符串包含"错误",我希望我的状态为红色,否则为绿色.是的,我得编码了StatusStringToSolidColorBrushConverter!

我真的认为这并不比使用TextChanged事件(或其他)手动连接所有内容的旧Windows Forms方法好多少.我猜这仍然是一个选择.也许这就是人们真正做的事情,而我正在努力使一切都适合数据绑定范式?

所以,是的,请告诉我这是否真的是WPF编码的方式---或者如果我做错了,如果是的话,我该做什么.

data-binding wpf

7
推荐指数
3
解决办法
906
查看次数