小编Bre*_*ent的帖子

WPF DataGrid列宽度自动和滚动条

我有一个包含许多列的DataGrid.

Width="Auto"如果窗口比所有列都窄,我想用滚动条显示所有内容.如果窗口更宽,我希望列跨越空白区域,因此没有死区.

基本上我希望列最小宽度完全适合内容或标题.如果窗口更宽,则扩大到更大.

wpf user-interface xaml width

15
推荐指数
2
解决办法
4万
查看次数

Microsoft SQL Server 2005/2008:XML与text/varchar数据类型

是否更有意义(服务器端验证XML/schema/dtd除外)以XML类型而不是text/varchar/ntext存储XML?我不打算在数据库端进行任何XML操作.

我调查的目的是减少数据库大小.为此,我可以将XML数据类型用于非类型化XML吗?优缺点都有什么?

我发现了一篇与该主题相关文章,但我不确定作者的假设/结论是否正确.

xml database sql-server optimization sql-server-2005

10
推荐指数
2
解决办法
1万
查看次数

MultiBinding上的DataGridColumn SortMemberPath

我正在尝试对数字内容进行列排序.多重绑定转换器工作正常.此解决方案将SortMemberPath设置为null

我尝试了各种各样的方式,并大量搜索互联网.

出于安全目的,代码已从原始版本修改.

<DataGridTemplateColumn x:Name="avgPriceColumn">
<DataGridTemplateColumn.CellTemplate>
    <DataTemplate>
        <TextBlock>
            <TextBlock.Text>
                <MultiBinding Converter="{StaticResource avgPriceConverter}">
                    <Binding Path="NumberToDivideBy" />
                    <Binding Path="TotalDollars" />
                </MultiBinding>
            </TextBlock.Text>
        </TextBlock>
    </DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.SortMemberPath>
    <MultiBinding Converter="{StaticResource avgPriceConverter}">
        <Binding Path="NumberToDivideBy" />
        <Binding Path="TotalDollars" />
    </MultiBinding>
</DataGridTemplateColumn.SortMemberPath>
</DataGridTemplateColumn>
Run Code Online (Sandbox Code Playgroud)

编辑:我找到了一种方法来使数据绑定工作没有多重绑定,但排序仍然无法正常工作.由于DataGrid绑定到一个自定义类,因此我接受了整个值并从中进行转换,从而减少了对MultiBinding的需求.

<DataGridTextColumn x:Name="avgPriceColumn" Binding="{Binding Converter={StaticResource avgPriceConverter}}" SortMemberPath="{Binding Converter={StaticResource avgPriceConverter}}" />
Run Code Online (Sandbox Code Playgroud)

在这两个选项中,SortMemberPath默认设置为Binding,因此我不需要像我一样明确定义它

但是,这最终将SortMemberPath值设置为null,这与适用于我的代码环境的自定义约束冲突,并且不进行排序.所以我仍然对更好的解决方案感兴趣.

编辑:

在其他地方更改了冲突的代码,以允许重复的SortMemberPath,不支持对某些列进行排序,以及对某些列的相邻列值进行排序

c# wpf xaml binding multibinding

6
推荐指数
1
解决办法
6198
查看次数