gpt4 book ai didi

c# - 从代码隐藏格式化 DataGridTextColumn

转载 作者:太空宇宙 更新时间:2023-11-03 21:32:23 26 4
gpt4 key购买 nike

也许,我想,事情太简单了。我有一个数据网格,从后面的代码动态添加列。这行得通。然后我有带有整数值的列,我希望在列中看到右对齐,但它失败了。我的代码是:

    public List<List<int>> IntegerData { get; set; }................

DataGridTextColumn textC = new DataGridTextColumn();
textC.Header = ("Column");
textC.Binding = new Binding(string.Format("[{0}]", i));
textC.Binding.StringFormat = "00000";

最后我有类似的东西:

            myDataGrid.Itemssource = IntegerData

对于 textC.Binding.String.Format,问题是:(首先:stringFormat-LIne 似乎正确地重载了​​前一行)

格式“0”给出一个整数“1”“2”,这是正确的。

格式“00000”给出“00001”“00002”“00003”这对字符串格式是正确的,但不是我想要的

但是:

格式 "######"也给出 "1""2".. 等等(左对齐,无前导空格)

由于格式规则,我预计(或希望)##### 是描述的占位符,结果是 "bbbb1", "bbbb2"右对齐。 (b 在这里代表空白!)

因此绑定(bind)似乎可以正确处理“00000”格式,但不能正确处理“######”格式。有没有人对这个想法有任何想法或经验? (我在互联网上找到的所有其他绑定(bind)要复杂得多)

最佳答案

您可以通过创建样式而不是格式化单元格中的文本来解决您的问题。

首先,创建一个样式:

Style style = new Style(typeof(DataGridCell));
style.Setters.Add(new Setter(HorizontalAlignmentProperty, HorizontalAlignment.Right));

将样式分配给列

textC.CellStyle = style;

关于c# - 从代码隐藏格式化 DataGridTextColumn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23583697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com