【问题标题】:Binding unicode to gridviewcolumn将 unicode 绑定到 gridviewcolumn
【发布时间】:2015-03-14 11:41:52
【问题描述】:

我有一个列表视图,它现在显示电力、水和热的消耗和生产。但我需要显示这些不同值的单位。 我目前正在尝试使用带有 unicode 的 char 变量,该变量已绑定到显示单位的 gridviewcolumn,但它不会显示单位符号。

switch (type)
{
    case "water":       unit = '\u33A5'; break;
    case "electricity": unit = '\u33BE'; break;
    case "heat":        unit = '\u33BF'; break;
}

我的绑定看起来像这样:

<ListView x:Name="lvSearch" ItemsSource="{Binding Source=RegistrationWithKeyNumbers}" Visibility="Hidden" ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Hidden">
    <ListView.View>
        <GridView AllowsColumnReorder="True">
            <GridViewColumn DisplayMemberBinding="{Binding Path=Name}" Header="Name" Width="125" />
            <GridViewColumn x:Name="gvcPeriode" DisplayMemberBinding="{Binding Path=Consumption}" Width="150"/>
            <GridViewColumn DisplayMemberBinding="{Binding Path=Unit}" Header="Enhed" Width="40"/>
        </GridView>
    </ListView.View>
</ListView>

我现在得到的只是正方形。

编辑: 我班级中的整个单元属性如下所示:

protected char unit;

public char Unit
{
    get { return this.unit; }
    set
    {
        if (this.unit != value)
        {
            this.unit = value;
            this.OnPropertyChanged("Unit");
        }
    }
}

【问题讨论】:

  • 请显示完整的Unit 属性的代码,而不仅仅是一些随机的代码。
  • 我猜你正在设置unit 绑定发生之后,由于没有通知,因此更改不会反映在视图中。 (假设你switch代码是你设置unit的方式)
  • 在我将一个新的 RegistrationWithKeyNumbers 添加到我绑定的列表之前使用切换代码。但也许你知道第一个答案中的评论有什么问题?

标签: c# wpf xaml unicode


【解决方案1】:

您是否使用了不支持这些 Unicode 字符的字体?

【讨论】:

  • 我用的是标准字体,不知道是否支持?
  • 我刚刚尝试了一个文本框,它具有相同的字体并且它可以工作
  • 您确定绑定正在更新吗?你的 switch 语句中的unit 是小写的,这意味着 OnPropertyChanged() 不会被触发。此外,即使有其他东西以某种方式触发 OnPropertyChanged(),RegistrationWithKeyNumbers 也可能不会冒泡通知,从而导致 ListView 永远不会更新。
  • 我只是通过将我的单位变量更改为字符串而不是字符来使其工作。问题可能与将 char 绑定到列表视图有关吗?
  • 这实际上是我的第一个想法,但从未提及。也许 WPF 没有自动显示字符的方法。 TextBox 完全有可能在尝试显示之前将其转换为字符串。
猜你喜欢
  • 2013-12-19
  • 1970-01-01
  • 2017-09-14
  • 2011-02-08
  • 1970-01-01
  • 2016-09-23
  • 2016-05-06
  • 2011-07-06
  • 2018-05-22
相关资源
最近更新 更多